%     AERO LOAD - программа для нагружения агрегатов самолета распределенной нагрузкой
%     Copyright (C) 2018-2024  Михаил Козлов
%     Сайт проекта: <http://www.fastenerdoctor.ru/>
%     Адрес электронной почты для связи с разработчиком:
%     <doctor.fastener@gmail.com>
% 
%     Эта программа является свободным программным обеспечением: Вы можете
%     распространять ее и/или изменять, соблюдая условия Универсальной общественной
%     лицензии GNU, опубликованной Фондом свободного программного обеспечения,
%     либо редакции 3, либо (на Ваше усмотрение) любой редакции, выпущенной позже.
% 
%     Эта программа распространяется в надежде на то, что она окажется полезной,
%     но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, включая даже подразумеваемую гарантию ТОВАРНОЙ ПРИГОДНОСТИ,
%     либо ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННЫХ ЦЕЛЕЙ. Ознакомьтесь с Универсальной общественной
%     лицензией GNU для получения более подробной информации.
% 
%     Вы должны были получить копию Универсальной общественной лицензии GNU
%     вместе с этой программой. Если Вы ее не получили, то перейдите по адресу:
%     <http://www.gnu.org/licenses/>.
% 
%     This program is free software: you can redistribute it and/or modify
%     it under the terms of the GNU General Public License as published by
%     the Free Software Foundation, either version 3 of the License, or
%     (at your option) any later version.
% 
%     This program is distributed in the hope that it will be useful,
%     but WITHOUT ANY WARRANTY; without even the implied warranty of
%     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
%     GNU General Public License for more details.
% 
%     You should have received a copy of the GNU General Public License
%     along with this program.  If not, see <https://www.gnu.org/licenses/>.

function GW_Create_Graphic_Window(Load_Summary)

global Graphic_Window_Handle;
global Graphics_Properties;
global Graphics;

global Icons_16;
global Icons_26;

% --- Создание окна ---

% Создание окна
Graphic_Window_Handle = figure('Visible', 'off', 'Renderer', 'opengl');

% Удаление меню
set(Graphic_Window_Handle, 'MenuBar', 'none');

% Удаление стандартного тулбара
set(Graphic_Window_Handle, 'ToolBar', 'none');

% Создание тулбара
Toolbar_Handle = uitoolbar(Graphic_Window_Handle, 'Tag', 'Main_Toolbar');

% Установка атрибутов окна
switch Graphics_Properties.Language
    case 'RU'
        string = 'Aero Load';
    case 'EN'
        string = 'Aero Load';
end
set(Graphic_Window_Handle, 'Name', string);
set(Graphic_Window_Handle, 'NumberTitle', 'off');
set(Graphic_Window_Handle, 'Color', [0 0 0]);
set(Graphic_Window_Handle, 'GraphicsSmoothing', Graphics_Properties.Graphics_Smoothing);
set(Graphic_Window_Handle, 'DockControls', 'off');

% Установка размера и положения окна
Screen_Size = get(0, 'ScreenSize');
Screen_Size = Screen_Size(3:4)';
set(Graphic_Window_Handle, 'OuterPosition', [Graphics_Properties.Window_Offset, ...
                                             Graphics_Properties.Window_Offset+Graphics_Properties.Taskbar_High, ...
                                             Screen_Size(1)-2*Graphics_Properties.Window_Offset, ...
                                             Screen_Size(2)-2*Graphics_Properties.Window_Offset-Graphics_Properties.Taskbar_High]);

% Размер доступной области
drawnow;
Window_Inner_Size = get(Graphic_Window_Handle, 'Position');

% Релиз Matlab
Matlab_Release = version('-release');

% Ширина боковой панели
if (strcmp(Matlab_Release, '2014b') || str2double(Matlab_Release(1:4)) >= 2015)
    switch Graphics_Properties.Language
        case 'RU'
            Graphics_Properties.Side_Panel_Width = Graphics_Properties.Side_Panel_Width_RU;
        case 'EN'
            Graphics_Properties.Side_Panel_Width = Graphics_Properties.Side_Panel_Width_EN;
    end
else
    Graphics_Properties.Side_Panel_Width = Graphics_Properties.Side_Panel_Width_Simple;
end

% Создание панели для области построения данных
Panel_For_Axes = uipanel(Graphic_Window_Handle, 'BackgroundColor', [0 0 0], 'Tag', 'Panel_For_Axes', 'BorderType', 'none');
set(Panel_For_Axes, 'Units', 'pixels');
set(Panel_For_Axes, 'Position', [1, 1, Window_Inner_Size(3)-Graphics_Properties.Side_Panel_Width, Window_Inner_Size(4)]);

% Функция изменения размера окна
set(Graphic_Window_Handle, 'SizeChangedFcn', @GW_Resize_Window);

% Создание группы вкладок, либо боковой панели
switch Graphics_Properties.Language
    case 'RU'
        Tab_Titles = {'Геометрия', 'Сетка', 'Эпюры', 'Результирующие', 'Поля'};
    case 'EN'
        Tab_Titles = {'Geometry', 'Mesh', 'Diagrams', 'Resultants', 'Fields'};
end

% Создание кнопок
if (strcmp(Matlab_Release, '2014b') || str2double(Matlab_Release(1:4)) >= 2015)
    
    % Создание группы вкладок
    Tab_Group = uitabgroup(Graphic_Window_Handle, 'Tag', 'Tab_Group', 'Units', 'pixels');
    set(Tab_Group, 'Position', [Window_Inner_Size(3)-Graphics_Properties.Side_Panel_Width+1, 1, Graphics_Properties.Side_Panel_Width, Window_Inner_Size(4)]);
    
    % Создание вкладок
    Tab_Geometry = uitab(Tab_Group, 'Title', Tab_Titles{1}, 'Units', 'pixels', 'Tag', 'Tab_Geometry');
    Tab_Mesh = uitab(Tab_Group, 'Title', Tab_Titles{2}, 'Units', 'pixels', 'Tag', 'Tab_Mesh');
    Tab_Diagrams = uitab(Tab_Group, 'Title', Tab_Titles{3}, 'Units', 'pixels', 'Tag', 'Tab_Diagrams');
    Tab_Resultants = uitab(Tab_Group, 'Title', Tab_Titles{4}, 'Units', 'pixels', 'Tag', 'Tab_Resultants');
    Tab_Fields = uitab(Tab_Group, 'Title', Tab_Titles{5}, 'Units', 'pixels', 'Tag', 'Tab_Fields');
    
    % ##################### Вкладка Geometry #####################
    
    % Размеры вкладки
    drawnow;
    Tab_Inner_Position = get(Tab_Geometry, 'InnerPosition');
    
    % Сдвиги
    Button_Shift = Graphics_Properties.Panel_Button_Size + Graphics_Properties.Panel_Inner_Offset;
    Text_Shift = Graphics_Properties.Panel_Textbox_High + Graphics_Properties.Panel_Inner_Offset + Graphics_Properties.Panel_Blocks_Offset;
    
    % Пустое текстовое поле (для исключения манипуляций в графическом окне при движении зажатого курсора по боковой панели)
    Text_Tab_Geometry = uicontrol(Tab_Geometry, 'Style', 'Text', 'String', [], 'Tag', 'Text_Tab_Geometry', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Tab_Geometry, 'OuterPosition', [1, 1, Tab_Inner_Position(3), Tab_Inner_Position(4)]);
    
    % ============== Кнопки Plot-Erase ==============
    
    % Кнопка Plot
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Показать';
        case 'EN'
            string = 'Plot';
    end
    
    Plot_Geom_Button = uicontrol(Tab_Geometry, 'Style', 'pushbutton', 'Tag', 'Plot_Geom_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', string, 'Enable', 'on');
    set(Plot_Geom_Button, 'Position', [1 + Graphics_Properties.Panel_Left_Offset, 1 + Tab_Inner_Position(4) - Graphics_Properties.Panel_Top_Offset - Graphics_Properties.Plot_Erase_Button_High, ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % Кнопка Erase
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Скрыть';
        case 'EN'
            string = 'Erase';
    end
    
    Erase_Geom_Button = uicontrol(Tab_Geometry, 'Style', 'pushbutton', 'Tag', 'Erase_Geom_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', string, 'Enable', 'on');
    set(Erase_Geom_Button, 'Position', [Plot_Geom_Button.Position(1) + Plot_Geom_Button.Position(3) + Graphics_Properties.Panel_Inner_Offset, Plot_Geom_Button.Position(2), ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % ============== Текст раздела угловых точек поверхности хорд ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Угловые точки';
        case 'EN'
            string = 'Corner points';
    end
    
    Text_Corner_Points = uicontrol(Tab_Geometry, 'Style', 'Text', 'String', string, 'Tag', 'Text_Corner_Points', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Corner_Points, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Plot_Geom_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Угловые точки поверхности хорд';
        case 'EN'
            string = 'Chord surface corner points';
    end
    
    Draw_Corner_Points_Button = uicontrol(Tab_Geometry, 'Style', 'togglebutton', 'Tag', 'Draw_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'CData', Icons_26{3});
    set(Draw_Corner_Points_Button, 'Position', [Text_Corner_Points.OuterPosition(1), Text_Corner_Points.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки наименования угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Подписи';
        case 'EN'
            string = 'Labels';
    end
    
    Label_Corner_Points_Button = uicontrol(Tab_Geometry, 'Style', 'togglebutton', 'Tag', 'Label_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{1});
    set(Label_Corner_Points_Button, 'Position', [Draw_Corner_Points_Button.Position(1) + Button_Shift, Draw_Corner_Points_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки координат угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Координаты';
        case 'EN'
            string = 'Coordinates';
    end
    
    Coord_Corner_Points_Button = uicontrol(Tab_Geometry, 'Style', 'togglebutton', 'Tag', 'Coord_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{2});
    set(Coord_Corner_Points_Button, 'Position', [Label_Corner_Points_Button.Position(1) + Button_Shift, Label_Corner_Points_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % ============== Текст раздела проекций угловых точек поверхности хорд ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Проекции угловых точек';
        case 'EN'
            string = 'Projected corner points';
    end
    
    Text_Proj_Corner_Points = uicontrol(Tab_Geometry, 'Style', 'Text', 'String', string, 'Tag', 'Text_Proj_Corner_Points', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Proj_Corner_Points, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Corner_Points_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки проекций угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Проекции угловых точек поверхности хорд';
        case 'EN'
            string = 'Projected chord surface corner points';
    end
    
    Draw_Proj_Corner_Points_Button = uicontrol(Tab_Geometry, 'Style', 'togglebutton', 'Tag', 'Draw_Proj_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'CData', Icons_26{4});
    set(Draw_Proj_Corner_Points_Button, 'Position', [Text_Proj_Corner_Points.Position(1), Text_Proj_Corner_Points.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки наименования проекций угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Подписи';
        case 'EN'
            string = 'Labels';
    end
    
    Label_Proj_Corner_Points_Button = uicontrol(Tab_Geometry, 'Style', 'togglebutton', 'Tag', 'Label_Proj_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{9});
    set(Label_Proj_Corner_Points_Button, 'Position', [Draw_Proj_Corner_Points_Button.Position(1) + Button_Shift, Draw_Proj_Corner_Points_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки координат проекций угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Координаты';
        case 'EN'
            string = 'Coordinates';
    end
    
    Coord_Proj_Corner_Points_Button = uicontrol(Tab_Geometry, 'Style', 'togglebutton', 'Tag', 'Coord_Proj_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{2});
    set(Coord_Proj_Corner_Points_Button, 'Position', [Label_Proj_Corner_Points_Button.Position(1) + Button_Shift, Label_Proj_Corner_Points_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % ============== Текст раздела поверхности хорд ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Поверхность хорд';
        case 'EN'
            string = 'Chord surface';
    end
    
    Text_Chord_Surface = uicontrol(Tab_Geometry, 'Style', 'Text', 'String', string, 'Tag', 'Text_Chord_Surface', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Chord_Surface, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Proj_Corner_Points_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Поверхность хорд';
        case 'EN'
            string = 'Chord surface';
    end
    
    Draw_Chord_Surface_Button = uicontrol(Tab_Geometry, 'Style', 'togglebutton', 'Tag', 'Draw_Chord_Surface_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'CData', Icons_26{6});
    set(Draw_Chord_Surface_Button, 'Position', [Text_Chord_Surface.OuterPosition(1), Text_Chord_Surface.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Слайдер прозрачности поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность поверхности хорд';
        case 'EN'
            string = 'Chord surface translucency';
    end
    
    Chord_Surface_Translucency_Slider = uicontrol(Tab_Geometry, 'Style', 'slider', 'Tag', 'Chord_Surface_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'Value', Graphics_Properties.Chord_Surf_Translucency, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Chord_Surface_Translucency_Slider, 'Position', [Draw_Chord_Surface_Button.Position(1) + Button_Shift, Draw_Chord_Surface_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность поверхности хорд';
        case 'EN'
            string = 'Chord surface translucency';
    end
    
    Chord_Surface_Translucency_Text = uicontrol(Tab_Geometry, 'Style', 'text', 'Tag', 'Chord_Surface_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Chord_Surface_Translucency_Slider.Value), 'TooltipString', string);
    set(Chord_Surface_Translucency_Text, 'OuterPosition', [Chord_Surface_Translucency_Slider.Position(1) + Chord_Surface_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Chord_Surface_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Кнопка отрисовки параметрических линий поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Параметрические линии';
        case 'EN'
            string = 'Parametric lines';
    end
    
    Draw_Chord_Surface_Param_Button = uicontrol(Tab_Geometry, 'Style', 'togglebutton', 'Tag', 'Draw_Chord_Surface_Param_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{7});
    set(Draw_Chord_Surface_Param_Button, 'Position', [Draw_Chord_Surface_Button.Position(1), Draw_Chord_Surface_Button.Position(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Удалить параметрическую линию поверхности хорд (размах)
    CS_Param_Span_Minus = uicontrol(Tab_Geometry, 'Style', 'pushbutton', 'Tag', 'CS_Param_Span_Minus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '-', 'Enable', 'off');
    set(CS_Param_Span_Minus, 'Position', [Draw_Chord_Surface_Param_Button.Position(1) + Button_Shift, Draw_Chord_Surface_Param_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Small_Button_Size)/2), Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Число параметрических линий поверхности хорд (размах)
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Число параметрических линий (параметр размаха)';
        case 'EN'
            string = 'Number of parametric lines (span parameter)';
    end
    
    CS_Param_Span_Number = uicontrol(Tab_Geometry, 'Style', 'text', 'Tag', 'CS_Param_Span_Number', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%i', Graphics_Properties.Chord_Surf_N_Param_Lines_Span), 'TooltipString', string);
    set(CS_Param_Span_Number, 'OuterPosition', [CS_Param_Span_Minus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, CS_Param_Span_Minus.Position(2) + ...
        floor((Graphics_Properties.Small_Button_Size - Graphics_Properties.Number_Textbox_High)/2), Graphics_Properties.Param_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Добавить параметрическую линию поверхности хорд (размах)
    CS_Param_Span_Plus = uicontrol(Tab_Geometry, 'Style', 'pushbutton', 'Tag', 'CS_Param_Span_Plus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '+', 'Enable', 'off');
    set(CS_Param_Span_Plus, 'Position', [CS_Param_Span_Number.Position(1) + CS_Param_Span_Number.Position(3) + Graphics_Properties.Panel_Inner_Offset, CS_Param_Span_Minus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Удалить параметрическую линию поверхности хорд (хорды)
    CS_Param_Chord_Minus = uicontrol(Tab_Geometry, 'Style', 'pushbutton', 'Tag', 'CS_Param_Chord_Minus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '-', 'Enable', 'off');
    set(CS_Param_Chord_Minus, 'Position', [CS_Param_Span_Plus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset*6, CS_Param_Span_Plus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Число параметрических линий поверхности хорд (размах)
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Число параметрических линий (параметр хорд)';
        case 'EN'
            string = 'Number of parametric lines (chord parameter)';
    end
    
    CS_Param_Chord_Number = uicontrol(Tab_Geometry, 'Style', 'text', 'Tag', 'CS_Param_Chord_Number', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%i', Graphics_Properties.Chord_Surf_N_Param_Lines_Chord), 'TooltipString', string);
    set(CS_Param_Chord_Number, 'OuterPosition', [CS_Param_Chord_Minus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, ...
        CS_Param_Span_Number.Position(2), Graphics_Properties.Param_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Добавить параметрическую линию поверхности хорд (хорды)
    CS_Param_Chord_Plus = uicontrol(Tab_Geometry, 'Style', 'pushbutton', 'Tag', 'CS_Param_Chord_Plus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '+', 'Enable', 'off');
    set(CS_Param_Chord_Plus, 'Position', [CS_Param_Chord_Number.Position(1) + CS_Param_Chord_Number.Position(3) + Graphics_Properties.Panel_Inner_Offset, CS_Param_Chord_Minus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % ============== Текст раздела проекции поверхности хорд ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Проекция поверхности хорд';
        case 'EN'
            string = 'Projected chord surface';
    end
    
    Text_Proj_Chord_Surface = uicontrol(Tab_Geometry, 'Style', 'Text', 'String', string, 'Tag', 'Text_Proj_Chord_Surface', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Proj_Chord_Surface, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Chord_Surface_Param_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки проекции поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Проекция поверхности хорд';
        case 'EN'
            string = 'Projected chord surface';
    end
    
    Draw_Proj_Chord_Surface_Button = uicontrol(Tab_Geometry, 'Style', 'togglebutton', 'Tag', 'Draw_Proj_Chord_Surface_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'CData', Icons_26{5});
    set(Draw_Proj_Chord_Surface_Button, 'Position', [Text_Proj_Chord_Surface.OuterPosition(1), Text_Proj_Chord_Surface.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Слайдер прозрачности проекции поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность проекции поверхности хорд';
        case 'EN'
            string = 'Projected chord surface translucency';
    end
    
    Proj_Chord_Surface_Translucency_Slider = uicontrol(Tab_Geometry, 'Style', 'slider', 'Tag', 'Proj_Chord_Surface_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'Value', Graphics_Properties.Projected_Chord_Surf_Translucency, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Proj_Chord_Surface_Translucency_Slider, 'Position', [Draw_Proj_Chord_Surface_Button.Position(1) + Button_Shift, Draw_Proj_Chord_Surface_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность проекции поверхности хорд';
        case 'EN'
            string = 'Projected chord surface translucency';
    end
    
    Proj_Chord_Surface_Translucency_Text = uicontrol(Tab_Geometry, 'Style', 'text', 'Tag', 'Proj_Chord_Surface_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Chord_Surface_Translucency_Slider.Value), 'TooltipString', string);
    set(Proj_Chord_Surface_Translucency_Text, 'OuterPosition', [Proj_Chord_Surface_Translucency_Slider.Position(1) + Proj_Chord_Surface_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Proj_Chord_Surface_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Кнопка отрисовки параметрических линий проекции поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Параметрические линии';
        case 'EN'
            string = 'Parametric lines';
    end
    
    Draw_Proj_Chord_Surface_Param_Button = uicontrol(Tab_Geometry, 'Style', 'togglebutton', 'Tag', 'Draw_Proj_Chord_Surface_Param_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{8});
    set(Draw_Proj_Chord_Surface_Param_Button, 'Position', [Draw_Proj_Chord_Surface_Button.Position(1), Draw_Proj_Chord_Surface_Button.Position(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Удалить параметрическую линию проекции поверхности хорд (размах)
    Proj_CS_Param_Span_Minus = uicontrol(Tab_Geometry, 'Style', 'pushbutton', 'Tag', 'Proj_CS_Param_Span_Minus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '-', 'Enable', 'off');
    set(Proj_CS_Param_Span_Minus, 'Position', [Draw_Proj_Chord_Surface_Param_Button.Position(1) + Button_Shift, Draw_Proj_Chord_Surface_Param_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Small_Button_Size)/2), Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Число параметрических линий проекции поверхности хорд (размах)
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Число параметрических линий (параметр размаха)';
        case 'EN'
            string = 'Number of parametric lines (span parameter)';
    end
    
    Proj_CS_Param_Span_Number = uicontrol(Tab_Geometry, 'Style', 'text', 'Tag', 'Proj_CS_Param_Span_Number', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%i', Graphics_Properties.Chord_Surf_N_Param_Lines_Span), 'TooltipString', string);
    set(Proj_CS_Param_Span_Number, 'OuterPosition', [Proj_CS_Param_Span_Minus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, Proj_CS_Param_Span_Minus.Position(2) + ...
        floor((Graphics_Properties.Small_Button_Size - Graphics_Properties.Number_Textbox_High)/2), Graphics_Properties.Param_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Добавить параметрическую линию проекции поверхности хорд (размах)
    Proj_CS_Param_Span_Plus = uicontrol(Tab_Geometry, 'Style', 'pushbutton', 'Tag', 'Proj_CS_Param_Span_Plus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '+', 'Enable', 'off');
    set(Proj_CS_Param_Span_Plus, 'Position', [Proj_CS_Param_Span_Number.Position(1) + Proj_CS_Param_Span_Number.Position(3) + Graphics_Properties.Panel_Inner_Offset, Proj_CS_Param_Span_Minus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Удалить параметрическую линию проекции поверхности хорд (хорды)
    Proj_CS_Param_Chord_Minus = uicontrol(Tab_Geometry, 'Style', 'pushbutton', 'Tag', 'Proj_CS_Param_Chord_Minus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '-', 'Enable', 'off');
    set(Proj_CS_Param_Chord_Minus, 'Position', [Proj_CS_Param_Span_Plus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset*6, Proj_CS_Param_Span_Plus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Число параметрических линий проекции поверхности хорд (размах)
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Число параметрических линий (параметр хорд)';
        case 'EN'
            string = 'Number of parametric lines (chord parameter)';
    end
    
    Proj_CS_Param_Chord_Number = uicontrol(Tab_Geometry, 'Style', 'text', 'Tag', 'Proj_CS_Param_Chord_Number', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%i', Graphics_Properties.Chord_Surf_N_Param_Lines_Chord), 'TooltipString', string);
    set(Proj_CS_Param_Chord_Number, 'OuterPosition', [Proj_CS_Param_Chord_Minus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, ...
        Proj_CS_Param_Span_Number.Position(2), Graphics_Properties.Param_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Добавить параметрическую линию проекции поверхности хорд (хорды)
    Proj_CS_Param_Chord_Plus = uicontrol(Tab_Geometry, 'Style', 'pushbutton', 'Tag', 'Proj_CS_Param_Chord_Plus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '+', 'Enable', 'off');
    set(Proj_CS_Param_Chord_Plus, 'Position', [Proj_CS_Param_Chord_Number.Position(1) + Proj_CS_Param_Chord_Number.Position(3) + Graphics_Properties.Panel_Inner_Offset, Proj_CS_Param_Chord_Minus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % ##################### Вкладка Mesh #####################
    
    % Размеры вкладки
    drawnow;
    Tab_Inner_Position = get(Tab_Mesh, 'InnerPosition');
    
    % Сдвиги
    Button_Shift = Graphics_Properties.Panel_Button_Size + Graphics_Properties.Panel_Inner_Offset;
    Text_Shift = Graphics_Properties.Panel_Textbox_High + Graphics_Properties.Panel_Inner_Offset + Graphics_Properties.Panel_Blocks_Offset;
    
    % Пустое текстовое поле (для исключения манипуляций в графическом окне при движении зажатого курсора по боковой панели)
    Text_Tab_Mesh = uicontrol(Tab_Mesh, 'Style', 'Text', 'String', [], 'Tag', 'Text_Tab_Mesh', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Tab_Mesh, 'OuterPosition', [1, 1, Tab_Inner_Position(3), Tab_Inner_Position(4)]);
    
    % ============== Кнопки Plot-Erase ==============
    
    % Кнопка Plot
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Показать';
        case 'EN'
            string = 'Plot';
    end
    
    Plot_Mesh_Button = uicontrol(Tab_Mesh, 'Style', 'pushbutton', 'Tag', 'Plot_Mesh_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'string', string, 'Enable', 'on');
    set(Plot_Mesh_Button, 'Position', [1 + Graphics_Properties.Panel_Left_Offset, 1 + Tab_Inner_Position(4) - Graphics_Properties.Panel_Top_Offset - Graphics_Properties.Plot_Erase_Button_High, ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % Кнопка Erase
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Скрыть';
        case 'EN'
            string = 'Erase';
    end
    
    Erase_Mesh_Button = uicontrol(Tab_Mesh, 'Style', 'pushbutton', 'Tag', 'Erase_Mesh_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'string', string, 'Enable', 'on');
    set(Erase_Mesh_Button, 'Position', [Plot_Mesh_Button.Position(1) + Plot_Mesh_Button.Position(3) + Graphics_Properties.Panel_Inner_Offset, Plot_Mesh_Button.Position(2), ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % ============== Текст раздела сетка ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Сетка';
        case 'EN'
            string = 'Mesh';
    end
    
    Text_Mesh = uicontrol(Tab_Mesh, 'Style', 'Text', 'String', string, 'Tag', 'Text_Mesh', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Mesh, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Plot_Mesh_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки сетки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Сетка';
        case 'EN'
            string = 'Mesh';
    end
    
    Draw_Mesh_Button = uicontrol(Tab_Mesh, 'Style', 'togglebutton', 'Tag', 'Draw_Mesh_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'CData', Icons_26{11});
    set(Draw_Mesh_Button, 'Position', [Text_Mesh.OuterPosition(1), Text_Mesh.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Слайдер прозрачности сетки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность сетки';
        case 'EN'
            string = 'Mesh translucency';
    end
    
    Mesh_Translucency_Slider = uicontrol(Tab_Mesh, 'Style', 'slider', 'Tag', 'Mesh_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'Enable', 'off', 'Value', Graphics_Properties.Element_Face_Translucency, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Mesh_Translucency_Slider, 'Position', [Draw_Mesh_Button.Position(1) + Button_Shift, Draw_Mesh_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность сетки';
        case 'EN'
            string = 'Mesh translucency';
    end
    
    Mesh_Translucency_Text = uicontrol(Tab_Mesh, 'Style', 'text', 'Tag', 'Mesh_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Mesh_Translucency_Slider.Value), 'TooltipString', string);
    set(Mesh_Translucency_Text, 'OuterPosition', [Mesh_Translucency_Slider.Position(1) + Mesh_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Mesh_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Кнопка отрисовки нормалей элементов
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Нормали элементов';
        case 'EN'
            string = 'Element normals';
    end
    
    Draw_Normals_Button = uicontrol(Tab_Mesh, 'Style', 'togglebutton', 'Tag', 'Draw_Normals_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{10});
    set(Draw_Normals_Button, 'Position', [Draw_Mesh_Button.Position(1), Draw_Mesh_Button.Position(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % ============== Текст раздела проекции сетки ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Проекция сетки';
        case 'EN'
            string = 'Projected mesh';
    end
    
    Text_Projected_Mesh = uicontrol(Tab_Mesh, 'Style', 'Text', 'String', string, 'Tag', 'Text_Projected_Mesh', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Projected_Mesh, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Normals_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки проекции сетки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Проекция сетки';
        case 'EN'
            string = 'Projected mesh';
    end
    
    Draw_Projected_Mesh_Button = uicontrol(Tab_Mesh, 'Style', 'togglebutton', 'Tag', 'Draw_Projected_Mesh_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'CData', Icons_26{12});
    set(Draw_Projected_Mesh_Button, 'Position', [Text_Projected_Mesh.OuterPosition(1), Text_Projected_Mesh.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Слайдер прозрачности проекции сетки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность проекции сетки';
        case 'EN'
            string = 'Projected mesh translucency';
    end
    
    Projected_Mesh_Translucency_Slider = uicontrol(Tab_Mesh, 'Style', 'slider', 'Tag', 'Projected_Mesh_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'Enable', 'off', 'Value', Graphics_Properties.Element_Face_Translucency, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Projected_Mesh_Translucency_Slider, 'Position', [Draw_Projected_Mesh_Button.Position(1) + Button_Shift, Draw_Projected_Mesh_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность проекции сетки';
        case 'EN'
            string = 'Projected mesh translucency';
    end
    
    Projected_Mesh_Translucency_Text = uicontrol(Tab_Mesh, 'Style', 'text', 'Tag', 'Projected_Mesh_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Projected_Mesh_Translucency_Slider.Value), 'TooltipString', string);
    set(Projected_Mesh_Translucency_Text, 'OuterPosition', [Projected_Mesh_Translucency_Slider.Position(1) + Projected_Mesh_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Projected_Mesh_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Кнопка отрисовки нормалей проекции элементов
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Нормали проекций элементов';
        case 'EN'
            string = 'Projected element normals';
    end
    
    Draw_Projected_Normals_Button = uicontrol(Tab_Mesh, 'Style', 'togglebutton', 'Tag', 'Draw_Projected_Normals_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{10});
    set(Draw_Projected_Normals_Button, 'Position', [Draw_Projected_Mesh_Button.Position(1), Draw_Projected_Mesh_Button.Position(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % ##################### Вкладка Diagrams #####################
    
    % Размеры вкладки
    drawnow;
    Tab_Inner_Position = get(Tab_Diagrams, 'InnerPosition');
    
    % Сдвиги
    Button_Shift = Graphics_Properties.Panel_Button_Size + Graphics_Properties.Panel_Inner_Offset;
    Text_Shift = Graphics_Properties.Panel_Textbox_High + Graphics_Properties.Panel_Inner_Offset + Graphics_Properties.Panel_Blocks_Offset;
    
    % Пустое текстовое поле (для исключения манипуляций в графическом окне при движении зажатого курсора по боковой панели)
    Text_Tab_Diagrams = uicontrol(Tab_Diagrams, 'Style', 'Text', 'String', [], 'Tag', 'Text_Tab_Diagrams', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Tab_Diagrams, 'OuterPosition', [1, 1, Tab_Inner_Position(3), Tab_Inner_Position(4)]);
    
    % ============== Кнопки Plot-Erase ==============
    
    % Кнопка Plot
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Показать';
        case 'EN'
            string = 'Plot';
    end
    
    Plot_Diagrams_Button = uicontrol(Tab_Diagrams, 'Style', 'pushbutton', 'Tag', 'Plot_Diagrams_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'string', string, 'Enable', 'on');
    set(Plot_Diagrams_Button, 'Position', [1 + Graphics_Properties.Panel_Left_Offset, 1 + Tab_Inner_Position(4) - Graphics_Properties.Panel_Top_Offset - Graphics_Properties.Plot_Erase_Button_High, ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % Кнопка Erase
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Скрыть';
        case 'EN'
            string = 'Erase';
    end
    
    Erase_Diagrams_Button = uicontrol(Tab_Diagrams, 'Style', 'pushbutton', 'Tag', 'Erase_Diagrams_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'string', string, 'Enable', 'on');
    set(Erase_Diagrams_Button, 'Position', [Plot_Diagrams_Button.Position(1) + Plot_Diagrams_Button.Position(3) + Graphics_Properties.Panel_Inner_Offset, Plot_Diagrams_Button.Position(2), ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % ============== Текст раздела погонная нагрузка ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Погонная нагрузка';
        case 'EN'
            string = 'Spanwise load';
    end
    
    Text_Span_Load_Diag = uicontrol(Tab_Diagrams, 'Style', 'Text', 'String', string, 'Tag', 'Text_Span_Load_Diag', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Span_Load_Diag, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Plot_Diagrams_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки погонной нагрузки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Эпюра погонной нагрузки';
        case 'EN'
            string = 'Spanwise load diagram';
    end
    
    Draw_Span_Load_Diag_Button = uicontrol(Tab_Diagrams, 'Style', 'togglebutton', 'Tag', 'Draw_Span_Load_Diag_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'CData', Icons_26{17});
    set(Draw_Span_Load_Diag_Button, 'Position', [Text_Span_Load_Diag.OuterPosition(1), Text_Span_Load_Diag.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Слайдер прозрачности погонной нагрузки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность эпюры погонной нагрузки';
        case 'EN'
            string = 'Spanwise load diagram translucency';
    end
    
    Span_Load_Diag_Translucency_Slider = uicontrol(Tab_Diagrams, 'Style', 'slider', 'Tag', 'Span_Load_Diag_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'Enable', 'off', 'Value', 1, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Span_Load_Diag_Translucency_Slider, 'Position', [Draw_Span_Load_Diag_Button.Position(1) + Button_Shift, Draw_Span_Load_Diag_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность эпюры погонной нагрузки';
        case 'EN'
            string = 'Spanwise load diagram translucency';
    end
    
    Span_Load_Diag_Translucency_Text = uicontrol(Tab_Diagrams, 'Style', 'text', 'Tag', 'Span_Load_Diag_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Span_Load_Diag_Translucency_Slider.Value), 'TooltipString', string);
    set(Span_Load_Diag_Translucency_Text, 'OuterPosition', [Span_Load_Diag_Translucency_Slider.Position(1) + Span_Load_Diag_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Span_Load_Diag_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % ============== Текст раздела давление ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Давление';
        case 'EN'
            string = 'Pressure';
    end
    
    Text_Pressure_Diag = uicontrol(Tab_Diagrams, 'Style', 'Text', 'String', string, 'Tag', 'Text_Pressure_Diag', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Pressure_Diag, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Span_Load_Diag_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки эпюр давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Эпюры давления';
        case 'EN'
            string = 'Pressure diagrams';
    end
    
    Draw_Pressure_Diag_Button = uicontrol(Tab_Diagrams, 'Style', 'togglebutton', 'Tag', 'Draw_Pressure_Diag_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'CData', Icons_26{16});
    set(Draw_Pressure_Diag_Button, 'Position', [Text_Pressure_Diag.OuterPosition(1), Text_Pressure_Diag.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Уменьшить число эпюр давления
    Pressure_Diag_Minus = uicontrol(Tab_Diagrams, 'Style', 'pushbutton', 'Tag', 'Pressure_Diag_Minus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'string', '-', 'Enable', 'off');
    set(Pressure_Diag_Minus, 'Position', [Draw_Pressure_Diag_Button.Position(1) + Button_Shift, Draw_Pressure_Diag_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Small_Button_Size)/2), Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Число эпюр давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Число эпюр давления';
        case 'EN'
            string = 'Number of pressure diagrams';
    end
    
    Pressure_Diag_Number = uicontrol(Tab_Diagrams, 'Style', 'text', 'Tag', 'Pressure_Diag_Number', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%i', Graphics_Properties.Pressure_Diag_Number), 'TooltipString', string);
    set(Pressure_Diag_Number, 'OuterPosition', [Pressure_Diag_Minus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, Pressure_Diag_Minus.Position(2) + ...
        floor((Graphics_Properties.Small_Button_Size - Graphics_Properties.Number_Textbox_High)/2), Graphics_Properties.Param_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Увеличить число эпюр давления
    Pressure_Diag_Plus = uicontrol(Tab_Diagrams, 'Style', 'pushbutton', 'Tag', 'Pressure_Diag_Plus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'string', '+', 'Enable', 'off');
    set(Pressure_Diag_Plus, 'Position', [Pressure_Diag_Number.Position(1) + Pressure_Diag_Number.Position(3) + Graphics_Properties.Panel_Inner_Offset, Pressure_Diag_Minus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Слайдер прозрачности эпюр давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность эпюр давления';
        case 'EN'
            string = 'Pressure diagrams translucency';
    end
    
    Pressure_Diag_Translucency_Slider = uicontrol(Tab_Diagrams, 'Style', 'slider', 'Tag', 'Pressure_Diag_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'Enable', 'off', 'Value', 1, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Pressure_Diag_Translucency_Slider, 'Position', [Pressure_Diag_Plus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, Draw_Pressure_Diag_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset - 2*Graphics_Properties.Small_Button_Size - Graphics_Properties.Param_Textbox_Width - 3*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность эпюр давления';
        case 'EN'
            string = 'Pressure diagrams translucency';
    end
    
    Pressure_Diag_Translucency_Text = uicontrol(Tab_Diagrams, 'Style', 'text', 'Tag', 'Pressure_Diag_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Pressure_Diag_Translucency_Slider.Value), 'TooltipString', string);
    set(Pressure_Diag_Translucency_Text, 'OuterPosition', [Pressure_Diag_Translucency_Slider.Position(1) + Pressure_Diag_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Pressure_Diag_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % ============== Текст раздела центр давления ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Теоретический центр давления';
        case 'EN'
            string = 'Theoretical pressure center';
    end
    
    Text_Pressure_Center = uicontrol(Tab_Diagrams, 'Style', 'Text', 'String', string, 'Tag', 'Text_Pressure_Center', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Pressure_Center, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Pressure_Diag_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Теоретический центр давления';
        case 'EN'
            string = 'Theoretical pressure center';
    end
    
    Draw_Pressure_Center_Button = uicontrol(Tab_Diagrams, 'Style', 'togglebutton', 'Tag', 'Draw_Pressure_Center_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'CData', Icons_26{13});
    set(Draw_Pressure_Center_Button, 'Position', [Text_Pressure_Center.OuterPosition(1), Text_Pressure_Center.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    if (isempty(Load_Summary.Pressure_Center_XYZ_Projected))
        set(Draw_Pressure_Center_Button, 'Enable', 'off');
    end
    
    % Кнопка подписи центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Подпись';
        case 'EN'
            string = 'Label';
    end
    
    Label_Pressure_Center_Button = uicontrol(Tab_Diagrams, 'Style', 'togglebutton', 'Tag', 'Label_Pressure_Center_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{14});
    set(Label_Pressure_Center_Button, 'Position', [Draw_Pressure_Center_Button.Position(1) + Button_Shift, Draw_Pressure_Center_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка декартовых координат центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Координаты';
        case 'EN'
            string = 'Coordinates';
    end
    
    Pressure_Center_Coord_Button = uicontrol(Tab_Diagrams, 'Style', 'togglebutton', 'Tag', 'Pressure_Center_Coord_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{2});
    set(Pressure_Center_Coord_Button, 'Position', [Label_Pressure_Center_Button.Position(1) + Button_Shift, Label_Pressure_Center_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка параметрических координат центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Параметрические координаты';
        case 'EN'
            string = 'Parametric coordinates';
    end
    
    Pressure_Center_Param_Coord_Button = uicontrol(Tab_Diagrams, 'Style', 'togglebutton', 'Tag', 'Pressure_Center_Param_Coord_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{15});
    set(Pressure_Center_Param_Coord_Button, 'Position', [Pressure_Center_Coord_Button.Position(1) + Button_Shift, Pressure_Center_Coord_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % ============== Текст раздела линия центров давления ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Линия центров давления';
        case 'EN'
            string = 'Pressure centers line';
    end
    
    Text_Pressure_Centers_Line = uicontrol(Tab_Diagrams, 'Style', 'Text', 'String', string, 'Tag', 'Text_Pressure_Centers_Line', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Pressure_Centers_Line, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Pressure_Center_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки линии центров давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Линия центров давления';
        case 'EN'
            string = 'Pressure centers line';
    end
    
    Draw_Pressure_Centers_Line_Button = uicontrol(Tab_Diagrams, 'Style', 'togglebutton', 'Tag', 'Draw_Pressure_Centers_Line_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'CData', Icons_26{18});
    set(Draw_Pressure_Centers_Line_Button, 'Position', [Text_Pressure_Centers_Line.OuterPosition(1), Text_Pressure_Centers_Line.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % ##################### Вкладка Resultants #####################
    
    % Размеры вкладки
    drawnow;
    Tab_Inner_Position = get(Tab_Resultants, 'InnerPosition');
    
    % Сдвиги
    Button_Shift = Graphics_Properties.Panel_Button_Size + Graphics_Properties.Panel_Inner_Offset;
    Text_Shift = Graphics_Properties.Panel_Textbox_High + Graphics_Properties.Panel_Inner_Offset + Graphics_Properties.Panel_Blocks_Offset;
    
    % Пустое текстовое поле (для исключения манипуляций в графическом окне при движении зажатого курсора по боковой панели)
    Text_Tab_Resultants = uicontrol(Tab_Resultants, 'Style', 'Text', 'String', [], 'Tag', 'Text_Tab_Resultants', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Tab_Resultants, 'OuterPosition', [1, 1, Tab_Inner_Position(3), Tab_Inner_Position(4)]);
    
    % ============== Кнопки Plot-Erase ==============
    
    % Кнопка Plot
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Показать';
        case 'EN'
            string = 'Plot';
    end
    
    Plot_Resultants_Button = uicontrol(Tab_Resultants, 'Style', 'pushbutton', 'Tag', 'Plot_Resultants_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'string', string, 'Enable', 'on');
    set(Plot_Resultants_Button, 'Position', [1 + Graphics_Properties.Panel_Left_Offset, 1 + Tab_Inner_Position(4) - Graphics_Properties.Panel_Top_Offset - Graphics_Properties.Plot_Erase_Button_High, ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % Кнопка Erase
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Скрыть';
        case 'EN'
            string = 'Erase';
    end
    
    Erase_Resultants_Button = uicontrol(Tab_Resultants, 'Style', 'pushbutton', 'Tag', 'Erase_Resultants_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'string', string, 'Enable', 'on');
    set(Erase_Resultants_Button, 'Position', [Plot_Resultants_Button.Position(1) + Plot_Resultants_Button.Position(3) + Graphics_Properties.Panel_Inner_Offset, Plot_Resultants_Button.Position(2), ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % ============== Текст раздела точка суммирования ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Точка суммирования';
        case 'EN'
            string = 'Summation point';
    end
    
    Text_Summation_Point = uicontrol(Tab_Resultants, 'Style', 'Text', 'String', string, 'Tag', 'Text_Summation_Point', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Summation_Point, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Plot_Resultants_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки точки суммирования
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Точка суммирования';
        case 'EN'
            string = 'Summation point';
    end
    
    Draw_Summation_Point_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Draw_Summation_Point_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'CData', Icons_26{20});
    set(Draw_Summation_Point_Button, 'Position', [Text_Summation_Point.OuterPosition(1), Text_Summation_Point.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка подписи точки суммирования
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Подпись';
        case 'EN'
            string = 'Label';
    end
    
    Label_Summation_Point_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Label_Summation_Point_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{21});
    set(Label_Summation_Point_Button, 'Position', [Draw_Summation_Point_Button.Position(1) + Button_Shift, Draw_Summation_Point_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка координат точки суммирования
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Координаты';
        case 'EN'
            string = 'Coordinates';
    end
    
    Summation_Point_Coord_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Summation_Point_Coord_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{2});
    set(Summation_Point_Coord_Button, 'Position', [Label_Summation_Point_Button.Position(1) + Button_Shift, Label_Summation_Point_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % ============== Текст раздела система координат ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Система координат';
        case 'EN'
            string = 'Coordinate system';
    end
    
    Text_Summ_Coord_System = uicontrol(Tab_Resultants, 'Style', 'Text', 'String', string, 'Tag', 'Text_Summ_Coord_System', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Summ_Coord_System, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Summation_Point_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки системы координат
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Система координат для результирующих силовых факторов';
        case 'EN'
            string = 'Coordinate system for resultants';
    end
    
    Draw_Coord_System_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Draw_Coord_System_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'CData', Icons_26{25});
    set(Draw_Coord_System_Button, 'Position', [Text_Summ_Coord_System.OuterPosition(1), Text_Summ_Coord_System.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % ============== Текст раздела результирующая сила ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Результирующая сила';
        case 'EN'
            string = 'Force resultant';
    end
    
    Text_Force_Resultant = uicontrol(Tab_Resultants, 'Style', 'Text', 'String', string, 'Tag', 'Text_Force_Resultant', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Force_Resultant, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Coord_System_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки вектора результирующей силы
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Результирующая сила';
        case 'EN'
            string = 'Force resultant';
    end
    
    Draw_Force_Resultant_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Draw_Force_Resultant_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'CData', Icons_26{22});
    set(Draw_Force_Resultant_Button, 'Position', [Text_Force_Resultant.OuterPosition(1), Text_Force_Resultant.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки нормальной и тангенциальной компонент
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Нормальная/тангенциальная компоненты';
        case 'EN'
            string = 'Normal/tangential components';
    end
    
    Draw_Force_Pn_Pt_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Draw_Force_Pn_Pt_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'on', 'CData', Icons_26{24});
    set(Draw_Force_Pn_Pt_Button, 'Position', [Draw_Force_Resultant_Button.Position(1) + Button_Shift, Draw_Force_Resultant_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки XYZ компонент
    switch Graphics_Properties.Language
        case 'RU'
            string = 'XYZ компоненты';
        case 'EN'
            string = 'XYZ components';
    end
    
    Draw_Force_XYZ_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Draw_Force_XYZ_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'on', 'CData', Icons_26{2});
    set(Draw_Force_XYZ_Button, 'Position', [Draw_Force_Pn_Pt_Button.Position(1) + Button_Shift, Draw_Force_Pn_Pt_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % ============== Текст раздела результирующий момент ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Результирующий момент';
        case 'EN'
            string = 'Moment resultant';
    end
    
    Text_Moment_Resultant = uicontrol(Tab_Resultants, 'Style', 'Text', 'String', string, 'Tag', 'Text_Moment_Resultant', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Moment_Resultant, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Force_Resultant_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки вектора результирующего момента
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Результирующий момент';
        case 'EN'
            string = 'Moment resultant';
    end
    
    Draw_Moment_Resultant_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Draw_Moment_Resultant_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'CData', Icons_26{23});
    set(Draw_Moment_Resultant_Button, 'Position', [Text_Moment_Resultant.OuterPosition(1), Text_Moment_Resultant.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки XYZ компонент
    switch Graphics_Properties.Language
        case 'RU'
            string = 'XYZ компоненты';
        case 'EN'
            string = 'XYZ components';
    end
    
    Draw_Moment_XYZ_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Draw_Moment_XYZ_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'on', 'CData', Icons_26{2});
    set(Draw_Moment_XYZ_Button, 'Position', [Draw_Moment_Resultant_Button.Position(1) + Button_Shift, Draw_Moment_Resultant_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % ============== Текст раздела фактический центр давления ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Фактический центр давления';
        case 'EN'
            string = 'Actual pressure center';
    end
    
    Text_Actual_Pressure_Center = uicontrol(Tab_Resultants, 'Style', 'Text', 'String', string, 'Tag', 'Text_Actual_Pressure_Center', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Actual_Pressure_Center, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Moment_Resultant_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки фактического центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Фактический центр давления';
        case 'EN'
            string = 'Actual pressure center';
    end
    
    Draw_Actual_Pressure_Center_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Draw_Actual_Pressure_Center_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'CData', Icons_26{19});
    set(Draw_Actual_Pressure_Center_Button, 'Position', [Text_Actual_Pressure_Center.OuterPosition(1), Text_Actual_Pressure_Center.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка подписи центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Подпись';
        case 'EN'
            string = 'Label';
    end
    
    Label_Actual_Pressure_Center_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Label_Actual_Pressure_Center_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{14});
    set(Label_Actual_Pressure_Center_Button, 'Position', [Draw_Actual_Pressure_Center_Button.Position(1) + Button_Shift, Draw_Actual_Pressure_Center_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка декартовых координат центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Координаты';
        case 'EN'
            string = 'Coordinates';
    end
    
    Actual_Pressure_Center_Coord_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Actual_Pressure_Center_Coord_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{2});
    set(Actual_Pressure_Center_Coord_Button, 'Position', [Label_Actual_Pressure_Center_Button.Position(1) + Button_Shift, Label_Actual_Pressure_Center_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка параметрических координат центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Параметрические координаты';
        case 'EN'
            string = 'Parametric coordinates';
    end
    
    Actual_Pressure_Center_Param_Coord_Button = uicontrol(Tab_Resultants, 'Style', 'togglebutton', 'Tag', 'Actual_Pressure_Center_Param_Coord_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{15});
    set(Actual_Pressure_Center_Param_Coord_Button, 'Position', [Actual_Pressure_Center_Coord_Button.Position(1) + Button_Shift, Actual_Pressure_Center_Coord_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);

    % ##################### Вкладка Fields #####################
    
    % Размеры вкладки
    drawnow;
    Tab_Inner_Position = get(Tab_Fields, 'InnerPosition');
    
    % Сдвиги
    Button_Shift = Graphics_Properties.Panel_Button_Size + Graphics_Properties.Panel_Inner_Offset;
    Text_Shift = Graphics_Properties.Panel_Textbox_High + Graphics_Properties.Panel_Inner_Offset + Graphics_Properties.Panel_Blocks_Offset;
    
    % Пустое текстовое поле (для исключения манипуляций в графическом окне при движении зажатого курсора по боковой панели)
    Text_Tab_Fields = uicontrol(Tab_Fields, 'Style', 'Text', 'String', [], 'Tag', 'Text_Tab_Fields', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Tab_Fields, 'OuterPosition', [1, 1, Tab_Inner_Position(3), Tab_Inner_Position(4)]);
    
    % ============== Кнопки Plot-Erase ==============
    
    % Кнопка Plot
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Показать';
        case 'EN'
            string = 'Plot';
    end
    
    Plot_Fields_Button = uicontrol(Tab_Fields, 'Style', 'pushbutton', 'Tag', 'Plot_Fields_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Fields, ...
        'string', string, 'Enable', 'on');
    set(Plot_Fields_Button, 'Position', [1 + Graphics_Properties.Panel_Left_Offset, 1 + Tab_Inner_Position(4) - Graphics_Properties.Panel_Top_Offset - Graphics_Properties.Plot_Erase_Button_High, ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % Кнопка Erase
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Скрыть';
        case 'EN'
            string = 'Erase';
    end
    
    Erase_Fields_Button = uicontrol(Tab_Fields, 'Style', 'pushbutton', 'Tag', 'Erase_Fields_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Fields, ...
        'string', string, 'Enable', 'on');
    set(Erase_Fields_Button, 'Position', [Plot_Fields_Button.Position(1) + Plot_Fields_Button.Position(3) + Graphics_Properties.Panel_Inner_Offset, Plot_Fields_Button.Position(2), ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);

    % ============== Текст раздела CID Distributed Load ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Нормальная нагрузка';
        case 'EN'
            string = 'Normal load';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Поле нагрузки Pn, нормальной к базовой плоскости';
        case 'EN'
            tooltip_string = 'Pn load field normal to the basic plane';
    end
    
    Text_CID_Distr_Load = uicontrol(Tab_Fields, 'Style', 'Text', 'String', string, 'Tag', 'Text_CID_Distr_Load', 'Units', 'pixels', 'HorizontalAlignment', 'left', 'TooltipString', tooltip_string);
    set(Text_CID_Distr_Load, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Plot_Fields_Button.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки поля распределенной нагрузки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Поле нормальной нагрузки';
        case 'EN'
            string = 'Normal load field';
    end
    
    Draw_CID_Distr_Load_Button = uicontrol(Tab_Fields, 'Style', 'togglebutton', 'Tag', 'Draw_CID_Distr_Load_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Fields, ...
        'TooltipString', string, 'CData', Icons_26{27});
    set(Draw_CID_Distr_Load_Button, 'Position', [Text_CID_Distr_Load.OuterPosition(1), Text_CID_Distr_Load.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Группа кнопок тип поля
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Тип поля';
        case 'EN'
            string = 'Field type';
    end
    
    Button_Group_Field_Type = uibuttongroup(Tab_Fields, 'Title', string, 'Tag', 'Button_Group_Field_Type', 'Units', 'pixels', 'SelectionChangedFcn', @GW_Plot_Erase_Fields);
    set(Button_Group_Field_Type, 'Position', [Graphics_Properties.Panel_Left_Offset, Draw_CID_Distr_Load_Button.Position(2) - (4*Graphics_Properties.Radio_Button_Box_High+5) - Graphics_Properties.Panel_Inner_Offset*3, Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset + 2, 4*Graphics_Properties.Radio_Button_Box_High+5]);
    
    % Кнопка Element forces
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Силы в элементах';
        case 'EN'
            string = 'Element forces';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Силы, действующие на элементы';
        case 'EN'
            tooltip_string = 'Forces acting on elements';
    end
    
    Radio_Button_Forces = uicontrol(Button_Group_Field_Type, 'Style', 'radiobutton', 'Tag', 'Radio_Button_Forces', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_Forces, 'Position', [10, 6+2*Graphics_Properties.Radio_Button_Box_High, Button_Group_Field_Type.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Кнопка Element forces / Element areas
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Силы в элементах / Площади элементов';
        case 'EN'
            string = 'Element forces / Element areas';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Силы, действующие на элементы, деленные на площади элементов. Это поле передается в Patran в качестве CID Distributed Load';
        case 'EN'
            tooltip_string = 'Forces acting on elements divided by element areas. This field is passed to Patran as a CID Distributed Load';
    end
    
    Radio_Button_Forces_Areas = uicontrol(Button_Group_Field_Type, 'Style', 'radiobutton', 'Tag', 'Radio_Button_Forces_Areas', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_Forces_Areas, 'Position', [10, 6+Graphics_Properties.Radio_Button_Box_High, Button_Group_Field_Type.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Кнопка Element forces / Projected element areas
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Силы в элементах / Площади проекций эл-тов';
        case 'EN'
            string = 'Element forces / Projected element areas';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Силы, действующие на элементы, деленные на площади проекций элементов. Это поле повторяет исходное распределение давления';
        case 'EN'
            tooltip_string = 'Forces acting on elements divided by projected element areas. This field matches the original pressure distribution';
    end
    
    Radio_Button_Forces_Proj_Areas = uicontrol(Button_Group_Field_Type, 'Style', 'radiobutton', 'Tag', 'Radio_Button_Forces_Proj_Areas', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_Forces_Proj_Areas, 'Position', [10, 6, Button_Group_Field_Type.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Группа кнопок точка приложения
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Точка приложения';
        case 'EN'
            string = 'Application point';
    end
    
    Button_Group_Application_Point = uibuttongroup(Tab_Fields, 'Title', string, 'Tag', 'Button_Group_Application_Point', 'Units', 'pixels', 'SelectionChangedFcn', @GW_Plot_Erase_Fields);
    set(Button_Group_Application_Point, 'Position', [Graphics_Properties.Panel_Left_Offset, Button_Group_Field_Type.Position(2) - Graphics_Properties.Panel_Inner_Offset*3 - (3*Graphics_Properties.Radio_Button_Box_High+5), Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset + 2, 3*Graphics_Properties.Radio_Button_Box_High+5]);
    
    % Кнопка Element centriods
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Центроиды элементов';
        case 'EN'
            string = 'Element centriods';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Точки приложения векторов соответствуют центроидам элементов';
        case 'EN'
            tooltip_string = 'The application points of the vectors correspond to element centriods';
    end
    
    Radio_Button_Mesh = uicontrol(Button_Group_Application_Point, 'Style', 'radiobutton', 'Tag', 'Radio_Button_Mesh', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_Mesh, 'Position', [10, 6+Graphics_Properties.Radio_Button_Box_High, Button_Group_Application_Point.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Кнопка Projected element centroids
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Центроиды проекций элементов';
        case 'EN'
            string = 'Projected element centroids';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Точки приложения векторов соответствуют центроидам проекций элементов';
        case 'EN'
            tooltip_string = 'The application points of the vectors correspond to projected element centriods';
    end
    
    Radio_Button_Proj_Mesh = uicontrol(Button_Group_Application_Point, 'Style', 'radiobutton', 'Tag', 'Radio_Button_Proj_Mesh', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_Proj_Mesh, 'Position', [10, 6, Button_Group_Application_Point.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Группа кнопок векторы
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Векторы';
        case 'EN'
            string = 'Vectors';
    end
    
    Button_Group_Vectors = uibuttongroup(Tab_Fields, 'Title', string, 'Tag', 'Button_Group_Vectors', 'Units', 'pixels', 'SelectionChangedFcn', @GW_Plot_Erase_Fields);
    set(Button_Group_Vectors, 'Position', [Graphics_Properties.Panel_Left_Offset, Button_Group_Application_Point.Position(2) - Graphics_Properties.Panel_Inner_Offset*3 - (3*Graphics_Properties.Radio_Button_Box_High+5), Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset + 2, 3*Graphics_Properties.Radio_Button_Box_High+5]);
    
    % Кнопка от точки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'От точки';
        case 'EN'
            string = 'From point';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Вектор начинается от точки';
        case 'EN'
            tooltip_string = 'Vector starts from the point';
    end
    
    Radio_Button_From_Point = uicontrol(Button_Group_Vectors, 'Style', 'radiobutton', 'Tag', 'Radio_Button_From_Point', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_From_Point, 'Position', [10, 6+Graphics_Properties.Radio_Button_Box_High, Button_Group_Vectors.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Кнопка к точке
    switch Graphics_Properties.Language
        case 'RU'
            string = 'К точке';
        case 'EN'
            string = 'To point';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Вектор ведет к точке';
        case 'EN'
            tooltip_string = 'Vector leads to the point';
    end
    
    Radio_Button_To_Point = uicontrol(Button_Group_Vectors, 'Style', 'radiobutton', 'Tag', 'Radio_Button_To_Point', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_To_Point, 'Position', [10, 6, Button_Group_Vectors.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % ============== Текст раздела давление ==============
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Давление';
        case 'EN'
            string = 'Pressure';
    end
    
    Text_Pressure = uicontrol(Tab_Fields, 'Style', 'Text', 'String', string, 'Tag', 'Text_Pressure', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Pressure, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Button_Group_Vectors.Position(2) - Text_Shift, ...
        Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки векторов давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Поле давления. Длины векторов численно равны распределенной нагрузке, действующей в базовой плоскости';
        case 'EN'
            string = 'Pressure field. The lengths of the vectors are numerically equal to the distributed load acting in the basic plane';
    end
    
    Draw_Pressure_Field_Button = uicontrol(Tab_Fields, 'Style', 'togglebutton', 'Tag', 'Draw_Pressure_Field_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Fields, ...
        'TooltipString', string, 'CData', Icons_26{26});
    set(Draw_Pressure_Field_Button, 'Position', [Text_Pressure.OuterPosition(1), Text_Pressure.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки нормальной и тангенциальной компонент
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Нормальная/тангенциальная компоненты. Нормальная компонента поля давления численно равна вертикальной силе, действующей на элемент, деленной на площадь элемента';
        case 'EN'
            string = 'Normal/tangential components. The normal component of the pressure field is numerically equal to the vertical force acting on the element divided by the area of the element';
    end
    
    Draw_Pressure_Pn_Pt_Button = uicontrol(Tab_Fields, 'Style', 'togglebutton', 'Tag', 'Draw_Pressure_Pn_Pt_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Fields, ...
        'TooltipString', string, 'Enable', 'on', 'CData', Icons_26{24});
    set(Draw_Pressure_Pn_Pt_Button, 'Position', [Draw_Pressure_Field_Button.Position(1) + Button_Shift, Draw_Pressure_Field_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Группа кнопок векторы давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Векторы';
        case 'EN'
            string = 'Vectors';
    end
    
    Button_Group_Pressure_Vectors = uibuttongroup(Tab_Fields, 'Title', string, 'Tag', 'Button_Group_Pressure_Vectors', 'Units', 'pixels', 'SelectionChangedFcn', @GW_Plot_Erase_Fields);
    set(Button_Group_Pressure_Vectors, 'Position', [Graphics_Properties.Panel_Left_Offset, Draw_Pressure_Field_Button.Position(2) - (3*Graphics_Properties.Radio_Button_Box_High+5) - Graphics_Properties.Panel_Inner_Offset*3, Tab_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset + 2, 3*Graphics_Properties.Radio_Button_Box_High+5]);
    
    % Кнопка от точки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'От точки';
        case 'EN'
            string = 'From point';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Вектор начинается от точки';
        case 'EN'
            tooltip_string = 'Vector starts from the point';
    end
    
    Radio_Button_From_Point_Pressure = uicontrol(Button_Group_Pressure_Vectors, 'Style', 'radiobutton', 'Tag', 'Radio_Button_From_Point_Pressure', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_From_Point_Pressure, 'Position', [10, 6+Graphics_Properties.Radio_Button_Box_High, Button_Group_Pressure_Vectors.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Кнопка к точке
    switch Graphics_Properties.Language
        case 'RU'
            string = 'К точке';
        case 'EN'
            string = 'To point';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Вектор ведет к точке';
        case 'EN'
            tooltip_string = 'Vector leads to the point';
    end
    
    Radio_Button_To_Point_Pressure = uicontrol(Button_Group_Pressure_Vectors, 'Style', 'radiobutton', 'Tag', 'Radio_Button_To_Point_Pressure', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_To_Point_Pressure, 'Position', [10, 6, Button_Group_Pressure_Vectors.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % ============== Выключение кнопок ==============
    
    % Установка нажатой кнопки
    Button_Group_Field_Type.SelectedObject = Radio_Button_Forces_Areas;
    
    % Цвет шрифта
    set(Button_Group_Field_Type, 'ForegroundColor', uint8([109 109 109]));
    set(Button_Group_Application_Point, 'ForegroundColor', uint8([109 109 109]));
    set(Button_Group_Vectors, 'ForegroundColor', uint8([109 109 109]));
    set(Button_Group_Pressure_Vectors, 'ForegroundColor', uint8([109 109 109]));
    
    % Отключение кнопок
    switch Graphics.Load.Distributed_Load_Mode
        
        case 'CID_DISTR_LOAD'
            
            set(Draw_Pressure_Field_Button, 'Enable', 'off');
            set(Draw_Pressure_Pn_Pt_Button, 'Enable', 'off');
            
        case 'PRESSURE'
            
            set(Draw_CID_Distr_Load_Button, 'Enable', 'off');
            
    end
    
else
    
    % Создание панели
    Side_Panel = uipanel(Graphic_Window_Handle, 'Tag', 'Side_Panel', 'Units', 'pixels');
    set(Side_Panel, 'Position', [Window_Inner_Size(3)-Graphics_Properties.Side_Panel_Width+1, 1, Graphics_Properties.Side_Panel_Width, Window_Inner_Size(4)]);
    
    % Размеры панели
    drawnow;
    Side_Panel_Inner_Position = get(Side_Panel, 'InnerPosition');
    
    % Сдвиги
    Button_Shift = Graphics_Properties.Panel_Button_Size + Graphics_Properties.Panel_Inner_Offset;
    Text_Shift = Graphics_Properties.Panel_Textbox_High + Graphics_Properties.Panel_Inner_Offset + Graphics_Properties.Panel_Blocks_Offset;
    
    % Пустое текстовое поле (для исключения манипуляций в графическом окне при движении зажатого курсора по боковой панели)
    Text_Side_Panel = uicontrol(Side_Panel, 'Style', 'Text', 'String', [], 'Tag', 'Text_Side_Panel', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Side_Panel, 'OuterPosition', [1, 1, Side_Panel_Inner_Position(3), Side_Panel_Inner_Position(4)]);
    
    % ##################### Geometry #####################
    
    % ============== Кнопки Plot-Erase ==============

    % Кнопка Plot
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Показать';
        case 'EN'
            string = 'Plot';
    end
    
    Plot_Geom_Button = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Plot_Geom_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', string, 'Enable', 'on', 'Visible', 'off');
    set(Plot_Geom_Button, 'Position', [1, 1, Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % Кнопка Erase
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Скрыть';
        case 'EN'
            string = 'Erase';
    end
    
    Erase_Geom_Button = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Erase_Geom_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', string, 'Enable', 'on', 'Visible', 'off');
    set(Erase_Geom_Button, 'Position', [Plot_Geom_Button.Position(1) + Plot_Geom_Button.Position(3) + Graphics_Properties.Panel_Inner_Offset, Plot_Geom_Button.Position(2), ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % ============== Текст раздела геометрия ==============
    
    Text_Geometry_SP = uicontrol(Side_Panel, 'Style', 'Text', 'String', Tab_Titles{1}, 'Tag', 'Text_Geometry_SP', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Geometry_SP, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, 1 + Side_Panel_Inner_Position(4) - Graphics_Properties.Panel_Top_Offset - Graphics_Properties.Panel_Textbox_High, ...
        Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Угловые точки поверхности хорд';
        case 'EN'
            string = 'Chord surface corner points';
    end
    
    Draw_Corner_Points_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'CData', Icons_26{3});
    set(Draw_Corner_Points_Button, 'Position', [Text_Geometry_SP.OuterPosition(1), Text_Geometry_SP.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки наименования угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Подписи';
        case 'EN'
            string = 'Labels';
    end
    
    Label_Corner_Points_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Label_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{1});
    set(Label_Corner_Points_Button, 'Position', [Draw_Corner_Points_Button.Position(1) + Button_Shift, Draw_Corner_Points_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки координат угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Координаты';
        case 'EN'
            string = 'Coordinates';
    end
    
    Coord_Corner_Points_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Coord_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{2});
    set(Coord_Corner_Points_Button, 'Position', [Label_Corner_Points_Button.Position(1) + Button_Shift, Label_Corner_Points_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки проекций угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Проекции угловых точек поверхности хорд';
        case 'EN'
            string = 'Projected chord surface corner points';
    end
    
    Draw_Proj_Corner_Points_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Proj_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'CData', Icons_26{4});
    set(Draw_Proj_Corner_Points_Button, 'Position', [Draw_Corner_Points_Button.Position(1), Draw_Corner_Points_Button.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки наименования проекций угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Подписи';
        case 'EN'
            string = 'Labels';
    end
    
    Label_Proj_Corner_Points_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Label_Proj_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{9});
    set(Label_Proj_Corner_Points_Button, 'Position', [Draw_Proj_Corner_Points_Button.Position(1) + Button_Shift, Draw_Proj_Corner_Points_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки координат проекций угловых точек поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Координаты';
        case 'EN'
            string = 'Coordinates';
    end
    
    Coord_Proj_Corner_Points_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Coord_Proj_Corner_Points_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{2});
    set(Coord_Proj_Corner_Points_Button, 'Position', [Label_Proj_Corner_Points_Button.Position(1) + Button_Shift, Label_Proj_Corner_Points_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);

    % Кнопка отрисовки поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Поверхность хорд';
        case 'EN'
            string = 'Chord surface';
    end
    
    Draw_Chord_Surface_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Chord_Surface_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'CData', Icons_26{6});
    set(Draw_Chord_Surface_Button, 'Position', [Draw_Proj_Corner_Points_Button.OuterPosition(1), Draw_Proj_Corner_Points_Button.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки параметрических линий поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Параметрические линии';
        case 'EN'
            string = 'Parametric lines';
    end
    
    Draw_Chord_Surface_Param_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Chord_Surface_Param_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{7});
    set(Draw_Chord_Surface_Param_Button, 'Position', [Draw_Chord_Surface_Button.Position(1) + Button_Shift, Draw_Chord_Surface_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Слайдер прозрачности поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность поверхности хорд';
        case 'EN'
            string = 'Chord surface translucency';
    end
    
    Chord_Surface_Translucency_Slider = uicontrol(Side_Panel, 'Style', 'slider', 'Tag', 'Chord_Surface_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'Value', Graphics_Properties.Chord_Surf_Translucency, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Chord_Surface_Translucency_Slider, 'Position', [Draw_Chord_Surface_Param_Button.Position(1) + Button_Shift, Draw_Chord_Surface_Param_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - 2*Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность поверхности хорд';
        case 'EN'
            string = 'Chord surface translucency';
    end
    
    Chord_Surface_Translucency_Text = uicontrol(Side_Panel, 'Style', 'text', 'Tag', 'Chord_Surface_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Chord_Surface_Translucency_Slider.Value), 'TooltipString', string);
    set(Chord_Surface_Translucency_Text, 'OuterPosition', [Chord_Surface_Translucency_Slider.Position(1) + Chord_Surface_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Chord_Surface_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Удалить параметрическую линию поверхности хорд (размах)
    CS_Param_Span_Minus = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'CS_Param_Span_Minus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '-', 'Enable', 'off', 'Visible', 'off');
    set(CS_Param_Span_Minus, 'Position', [1, 1, Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Число параметрических линий поверхности хорд (размах)
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Число параметрических линий (параметр размаха)';
        case 'EN'
            string = 'Number of parametric lines (span parameter)';
    end
    
    CS_Param_Span_Number = uicontrol(Side_Panel, 'Style', 'text', 'Tag', 'CS_Param_Span_Number', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%i', Graphics_Properties.Chord_Surf_N_Param_Lines_Span), 'TooltipString', string, 'Visible', 'off');
    set(CS_Param_Span_Number, 'OuterPosition', [CS_Param_Span_Minus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, CS_Param_Span_Minus.Position(2) + ...
        floor((Graphics_Properties.Small_Button_Size - Graphics_Properties.Number_Textbox_High)/2), Graphics_Properties.Param_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Добавить параметрическую линию поверхности хорд (размах)
    CS_Param_Span_Plus = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'CS_Param_Span_Plus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '+', 'Enable', 'off', 'Visible', 'off');
    set(CS_Param_Span_Plus, 'Position', [CS_Param_Span_Number.Position(1) + CS_Param_Span_Number.Position(3) + Graphics_Properties.Panel_Inner_Offset, CS_Param_Span_Minus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Удалить параметрическую линию поверхности хорд (хорды)
    CS_Param_Chord_Minus = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'CS_Param_Chord_Minus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '-', 'Enable', 'off', 'Visible', 'off');
    set(CS_Param_Chord_Minus, 'Position', [CS_Param_Span_Plus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset*6, CS_Param_Span_Plus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Число параметрических линий поверхности хорд (размах)
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Число параметрических линий (параметр хорд)';
        case 'EN'
            string = 'Number of parametric lines (chord parameter)';
    end
    
    CS_Param_Chord_Number = uicontrol(Side_Panel, 'Style', 'text', 'Tag', 'CS_Param_Chord_Number', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%i', Graphics_Properties.Chord_Surf_N_Param_Lines_Chord), 'TooltipString', string, 'Visible', 'off');
    set(CS_Param_Chord_Number, 'OuterPosition', [CS_Param_Chord_Minus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, ...
        CS_Param_Span_Number.Position(2), Graphics_Properties.Param_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Добавить параметрическую линию поверхности хорд (хорды)
    CS_Param_Chord_Plus = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'CS_Param_Chord_Plus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '+', 'Enable', 'off', 'Visible', 'off');
    set(CS_Param_Chord_Plus, 'Position', [CS_Param_Chord_Number.Position(1) + CS_Param_Chord_Number.Position(3) + Graphics_Properties.Panel_Inner_Offset, CS_Param_Chord_Minus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Кнопка отрисовки проекции поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Проекция поверхности хорд';
        case 'EN'
            string = 'Projected chord surface';
    end
    
    Draw_Proj_Chord_Surface_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Proj_Chord_Surface_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'CData', Icons_26{5});
    set(Draw_Proj_Chord_Surface_Button, 'Position', [Draw_Chord_Surface_Button.OuterPosition(1), Draw_Chord_Surface_Button.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки параметрических линий проекции поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Параметрические линии';
        case 'EN'
            string = 'Parametric lines';
    end
    
    Draw_Proj_Chord_Surface_Param_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Proj_Chord_Surface_Param_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{8});
    set(Draw_Proj_Chord_Surface_Param_Button, 'Position', [Draw_Proj_Chord_Surface_Button.Position(1) + Button_Shift, Draw_Proj_Chord_Surface_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Слайдер прозрачности проекции поверхности хорд
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность проекции поверхности хорд';
        case 'EN'
            string = 'Projected chord surface translucency';
    end
    
    Proj_Chord_Surface_Translucency_Slider = uicontrol(Side_Panel, 'Style', 'slider', 'Tag', 'Proj_Chord_Surface_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'TooltipString', string, 'Enable', 'off', 'Value', Graphics_Properties.Projected_Chord_Surf_Translucency, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Proj_Chord_Surface_Translucency_Slider, 'Position', [Draw_Proj_Chord_Surface_Param_Button.Position(1) + Button_Shift, Draw_Proj_Chord_Surface_Param_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - 2*Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность проекции поверхности хорд';
        case 'EN'
            string = 'Projected chord surface translucency';
    end
    
    Proj_Chord_Surface_Translucency_Text = uicontrol(Side_Panel, 'Style', 'text', 'Tag', 'Proj_Chord_Surface_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Chord_Surface_Translucency_Slider.Value), 'TooltipString', string);
    set(Proj_Chord_Surface_Translucency_Text, 'OuterPosition', [Proj_Chord_Surface_Translucency_Slider.Position(1) + Proj_Chord_Surface_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Proj_Chord_Surface_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Удалить параметрическую линию проекции поверхности хорд (размах)
    Proj_CS_Param_Span_Minus = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Proj_CS_Param_Span_Minus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '-', 'Enable', 'off', 'Visible', 'off');
    set(Proj_CS_Param_Span_Minus, 'Position', [1, 1, Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Число параметрических линий проекции поверхности хорд (размах)
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Число параметрических линий (параметр размаха)';
        case 'EN'
            string = 'Number of parametric lines (span parameter)';
    end
    
    Proj_CS_Param_Span_Number = uicontrol(Side_Panel, 'Style', 'text', 'Tag', 'Proj_CS_Param_Span_Number', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%i', Graphics_Properties.Chord_Surf_N_Param_Lines_Span), 'TooltipString', string, 'Visible', 'off');
    set(Proj_CS_Param_Span_Number, 'OuterPosition', [Proj_CS_Param_Span_Minus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, Proj_CS_Param_Span_Minus.Position(2) + ...
        floor((Graphics_Properties.Small_Button_Size - Graphics_Properties.Number_Textbox_High)/2), Graphics_Properties.Param_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Добавить параметрическую линию проекции поверхности хорд (размах)
    Proj_CS_Param_Span_Plus = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Proj_CS_Param_Span_Plus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '+', 'Enable', 'off', 'Visible', 'off');
    set(Proj_CS_Param_Span_Plus, 'Position', [Proj_CS_Param_Span_Number.Position(1) + Proj_CS_Param_Span_Number.Position(3) + Graphics_Properties.Panel_Inner_Offset, Proj_CS_Param_Span_Minus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Удалить параметрическую линию проекции поверхности хорд (хорды)
    Proj_CS_Param_Chord_Minus = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Proj_CS_Param_Chord_Minus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '-', 'Enable', 'off', 'Visible', 'off');
    set(Proj_CS_Param_Chord_Minus, 'Position', [Proj_CS_Param_Span_Plus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset*6, Proj_CS_Param_Span_Plus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Число параметрических линий проекции поверхности хорд (размах)
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Число параметрических линий (параметр хорд)';
        case 'EN'
            string = 'Number of parametric lines (chord parameter)';
    end
    
    Proj_CS_Param_Chord_Number = uicontrol(Side_Panel, 'Style', 'text', 'Tag', 'Proj_CS_Param_Chord_Number', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%i', Graphics_Properties.Chord_Surf_N_Param_Lines_Chord), 'TooltipString', string, 'Visible', 'off');
    set(Proj_CS_Param_Chord_Number, 'OuterPosition', [Proj_CS_Param_Chord_Minus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, ...
        Proj_CS_Param_Span_Number.Position(2), Graphics_Properties.Param_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Добавить параметрическую линию проекции поверхности хорд (хорды)
    Proj_CS_Param_Chord_Plus = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Proj_CS_Param_Chord_Plus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Geom, ...
        'string', '+', 'Enable', 'off', 'Visible', 'off');
    set(Proj_CS_Param_Chord_Plus, 'Position', [Proj_CS_Param_Chord_Number.Position(1) + Proj_CS_Param_Chord_Number.Position(3) + Graphics_Properties.Panel_Inner_Offset, Proj_CS_Param_Chord_Minus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % ##################### Mesh #####################
    
    % ============== Кнопки Plot-Erase ==============
    
    % Кнопка Plot
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Показать';
        case 'EN'
            string = 'Plot';
    end
    
    Plot_Mesh_Button = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Plot_Mesh_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'string', string, 'Enable', 'on', 'Visible', 'off');
    set(Plot_Mesh_Button, 'Position', [1, 1, Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % Кнопка Erase
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Скрыть';
        case 'EN'
            string = 'Erase';
    end
    
    Erase_Mesh_Button = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Erase_Mesh_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'string', string, 'Enable', 'on', 'Visible', 'off');
    set(Erase_Mesh_Button, 'Position', [Plot_Mesh_Button.Position(1) + Plot_Mesh_Button.Position(3) + Graphics_Properties.Panel_Inner_Offset, Plot_Mesh_Button.Position(2), ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    Text_Mesh_SP = uicontrol(Side_Panel, 'Style', 'Text', 'String', Tab_Titles{2}, 'Tag', 'Text_Mesh_SP', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Mesh_SP, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Proj_Chord_Surface_Button.Position(2) - Text_Shift, ...
        Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки сетки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Сетка';
        case 'EN'
            string = 'Mesh';
    end
    
    Draw_Mesh_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Mesh_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'CData', Icons_26{11});
    set(Draw_Mesh_Button, 'Position', [Text_Mesh_SP.OuterPosition(1), Text_Mesh_SP.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки нормалей элементов
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Нормали элементов';
        case 'EN'
            string = 'Element normals';
    end
    
    Draw_Normals_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Normals_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{10});
    set(Draw_Normals_Button, 'Position', [Draw_Mesh_Button.Position(1) + Button_Shift, Draw_Mesh_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Слайдер прозрачности сетки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность сетки';
        case 'EN'
            string = 'Mesh translucency';
    end
    
    Mesh_Translucency_Slider = uicontrol(Side_Panel, 'Style', 'slider', 'Tag', 'Mesh_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'Enable', 'off', 'Value', Graphics_Properties.Element_Face_Translucency, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Mesh_Translucency_Slider, 'Position', [Draw_Normals_Button.Position(1) + Button_Shift, Draw_Normals_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - 2*Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность сетки';
        case 'EN'
            string = 'Mesh translucency';
    end
    
    Mesh_Translucency_Text = uicontrol(Side_Panel, 'Style', 'text', 'Tag', 'Mesh_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Mesh_Translucency_Slider.Value), 'TooltipString', string);
    set(Mesh_Translucency_Text, 'OuterPosition', [Mesh_Translucency_Slider.Position(1) + Mesh_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Mesh_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Кнопка отрисовки проекции сетки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Проекция сетки';
        case 'EN'
            string = 'Projected mesh';
    end
    
    Draw_Projected_Mesh_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Projected_Mesh_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'CData', Icons_26{12});
    set(Draw_Projected_Mesh_Button, 'Position', [Draw_Mesh_Button.OuterPosition(1), Draw_Mesh_Button.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки нормалей проекции элементов
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Нормали проекций элементов';
        case 'EN'
            string = 'Projected element normals';
    end
    
    Draw_Projected_Normals_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Projected_Normals_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{10});
    set(Draw_Projected_Normals_Button, 'Position', [Draw_Projected_Mesh_Button.Position(1) + Button_Shift, Draw_Projected_Mesh_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Слайдер прозрачности проекции сетки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность проекции сетки';
        case 'EN'
            string = 'Projected mesh translucency';
    end
    
    Projected_Mesh_Translucency_Slider = uicontrol(Side_Panel, 'Style', 'slider', 'Tag', 'Projected_Mesh_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Mesh, ...
        'TooltipString', string, 'Enable', 'off', 'Value', Graphics_Properties.Element_Face_Translucency, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Projected_Mesh_Translucency_Slider, 'Position', [Draw_Projected_Normals_Button.Position(1) + Button_Shift, Draw_Projected_Normals_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - 2*Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность проекции сетки';
        case 'EN'
            string = 'Projected mesh translucency';
    end
    
    Projected_Mesh_Translucency_Text = uicontrol(Side_Panel, 'Style', 'text', 'Tag', 'Projected_Mesh_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Projected_Mesh_Translucency_Slider.Value), 'TooltipString', string);
    set(Projected_Mesh_Translucency_Text, 'OuterPosition', [Projected_Mesh_Translucency_Slider.Position(1) + Projected_Mesh_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Projected_Mesh_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % ##################### Diagrams #####################
    
    % Кнопка Plot
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Показать';
        case 'EN'
            string = 'Plot';
    end
    
    Plot_Diagrams_Button = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Plot_Diagrams_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'string', string, 'Enable', 'on', 'Visible', 'off');
    set(Plot_Diagrams_Button, 'Position', [1, 1, Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % Кнопка Erase
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Скрыть';
        case 'EN'
            string = 'Erase';
    end
    
    Erase_Diagrams_Button = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Erase_Diagrams_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'string', string, 'Enable', 'on', 'Visible', 'off');
    set(Erase_Diagrams_Button, 'Position', [Plot_Diagrams_Button.Position(1) + Plot_Diagrams_Button.Position(3) + Graphics_Properties.Panel_Inner_Offset, Plot_Diagrams_Button.Position(2), ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    Text_Diag_SP = uicontrol(Side_Panel, 'Style', 'Text', 'String', Tab_Titles{3}, 'Tag', 'Text_Diag_SP', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Diag_SP, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Projected_Mesh_Button.Position(2) - Text_Shift, ...
        Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки погонной нагрузки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Эпюра погонной нагрузки';
        case 'EN'
            string = 'Spanwise load diagram';
    end
    
    Draw_Span_Load_Diag_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Span_Load_Diag_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'CData', Icons_26{17});
    set(Draw_Span_Load_Diag_Button, 'Position', [Text_Diag_SP.OuterPosition(1), Text_Diag_SP.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Слайдер прозрачности погонной нагрузки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность эпюры погонной нагрузки';
        case 'EN'
            string = 'Spanwise load diagram translucency';
    end
    
    Span_Load_Diag_Translucency_Slider = uicontrol(Side_Panel, 'Style', 'slider', 'Tag', 'Span_Load_Diag_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'Enable', 'off', 'Value', 1, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Span_Load_Diag_Translucency_Slider, 'Position', [Draw_Span_Load_Diag_Button.Position(1) + Button_Shift, Draw_Span_Load_Diag_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность эпюры погонной нагрузки';
        case 'EN'
            string = 'Spanwise load diagram translucency';
    end
    
    Span_Load_Diag_Translucency_Text = uicontrol(Side_Panel, 'Style', 'text', 'Tag', 'Span_Load_Diag_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Span_Load_Diag_Translucency_Slider.Value), 'TooltipString', string);
    set(Span_Load_Diag_Translucency_Text, 'OuterPosition', [Span_Load_Diag_Translucency_Slider.Position(1) + Span_Load_Diag_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Span_Load_Diag_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Кнопка отрисовки эпюр давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Эпюры давления';
        case 'EN'
            string = 'Pressure diagrams';
    end
    
    Draw_Pressure_Diag_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Pressure_Diag_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'CData', Icons_26{16});
    set(Draw_Pressure_Diag_Button, 'Position', [Draw_Span_Load_Diag_Button.OuterPosition(1), Draw_Span_Load_Diag_Button.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Уменьшить число эпюр давления
    Pressure_Diag_Minus = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Pressure_Diag_Minus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'string', '-', 'Enable', 'off');
    set(Pressure_Diag_Minus, 'Position', [Draw_Pressure_Diag_Button.Position(1) + Button_Shift, Draw_Pressure_Diag_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Small_Button_Size)/2), Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Число эпюр давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Число эпюр давления';
        case 'EN'
            string = 'Number of pressure diagrams';
    end
    
    Pressure_Diag_Number = uicontrol(Side_Panel, 'Style', 'text', 'Tag', 'Pressure_Diag_Number', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%i', Graphics_Properties.Pressure_Diag_Number), 'TooltipString', string);
    set(Pressure_Diag_Number, 'OuterPosition', [Pressure_Diag_Minus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, Pressure_Diag_Minus.Position(2) + ...
        floor((Graphics_Properties.Small_Button_Size - Graphics_Properties.Number_Textbox_High)/2), Graphics_Properties.Param_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Увеличить число эпюр давления
    Pressure_Diag_Plus = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Pressure_Diag_Plus', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'string', '+', 'Enable', 'off');
    set(Pressure_Diag_Plus, 'Position', [Pressure_Diag_Number.Position(1) + Pressure_Diag_Number.Position(3) + Graphics_Properties.Panel_Inner_Offset, Pressure_Diag_Minus.Position(2), ...
        Graphics_Properties.Small_Button_Size, Graphics_Properties.Small_Button_Size]);
    
    % Слайдер прозрачности эпюр давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность эпюр давления';
        case 'EN'
            string = 'Pressure diagrams translucency';
    end
    
    Pressure_Diag_Translucency_Slider = uicontrol(Side_Panel, 'Style', 'slider', 'Tag', 'Pressure_Diag_Translucency_Slider', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'Enable', 'off', 'Value', 1, 'BackgroundColor', [0.8 0.8 0.8]);
    set(Pressure_Diag_Translucency_Slider, 'Position', [Pressure_Diag_Plus.Position(1) + Graphics_Properties.Small_Button_Size + Graphics_Properties.Panel_Inner_Offset, Draw_Pressure_Diag_Button.Position(2) + ...
        floor((Graphics_Properties.Panel_Button_Size - Graphics_Properties.Panel_Slider_High)/2), ...
        Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset - Button_Shift - Graphics_Properties.Slider_Textbox_Width - ...
        2*Graphics_Properties.Panel_Inner_Offset - 2*Graphics_Properties.Small_Button_Size - Graphics_Properties.Param_Textbox_Width - 3*Graphics_Properties.Panel_Inner_Offset, Graphics_Properties.Panel_Slider_High]);
    
    % Значение слайдера прозрачности
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Прозрачность эпюр давления';
        case 'EN'
            string = 'Pressure diagrams translucency';
    end
    
    Pressure_Diag_Translucency_Text = uicontrol(Side_Panel, 'Style', 'text', 'Tag', 'Pressure_Diag_Translucency_Text', 'Units', 'pixels', ...
        'Enable', 'off', 'String', sprintf('%.2f', Pressure_Diag_Translucency_Slider.Value), 'TooltipString', string);
    set(Pressure_Diag_Translucency_Text, 'OuterPosition', [Pressure_Diag_Translucency_Slider.Position(1) + Pressure_Diag_Translucency_Slider.Position(3) + ...
        2*Graphics_Properties.Panel_Inner_Offset, Pressure_Diag_Translucency_Slider.Position(2) + floor((Graphics_Properties.Panel_Slider_High - Graphics_Properties.Number_Textbox_High)/2), ...
        Graphics_Properties.Slider_Textbox_Width, Graphics_Properties.Number_Textbox_High]);
    
    % Кнопка отрисовки центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Теоретический центр давления';
        case 'EN'
            string = 'Theoretical pressure center';
    end
    
    Draw_Pressure_Center_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Pressure_Center_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'CData', Icons_26{13});
    set(Draw_Pressure_Center_Button, 'Position', [Draw_Pressure_Diag_Button.OuterPosition(1), Draw_Pressure_Diag_Button.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    if (isempty(Load_Summary.Pressure_Center_XYZ_Projected))
        set(Draw_Pressure_Center_Button, 'Enable', 'off');
    end
    
    % Кнопка подписи центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Подпись';
        case 'EN'
            string = 'Label';
    end
    
    Label_Pressure_Center_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Label_Pressure_Center_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{14});
    set(Label_Pressure_Center_Button, 'Position', [Draw_Pressure_Center_Button.Position(1) + Button_Shift, Draw_Pressure_Center_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка декартовых координат центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Координаты';
        case 'EN'
            string = 'Coordinates';
    end
    
    Pressure_Center_Coord_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Pressure_Center_Coord_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{2});
    set(Pressure_Center_Coord_Button, 'Position', [Label_Pressure_Center_Button.Position(1) + Button_Shift, Label_Pressure_Center_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка параметрических координат центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Параметрические координаты';
        case 'EN'
            string = 'Parametric coordinates';
    end
    
    Pressure_Center_Param_Coord_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Pressure_Center_Param_Coord_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{15});
    set(Pressure_Center_Param_Coord_Button, 'Position', [Pressure_Center_Coord_Button.Position(1) + Button_Shift, Pressure_Center_Coord_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки линии центров давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Линия центров давления';
        case 'EN'
            string = 'Pressure centers line';
    end
    
    Draw_Pressure_Centers_Line_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Pressure_Centers_Line_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Diagrams, ...
        'TooltipString', string, 'CData', Icons_26{18});
    set(Draw_Pressure_Centers_Line_Button, 'Position', [Pressure_Center_Param_Coord_Button.OuterPosition(1) + Button_Shift, Pressure_Center_Param_Coord_Button.OuterPosition(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % ##################### Resultants #####################
    
    % Кнопка Plot
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Показать';
        case 'EN'
            string = 'Plot';
    end
    
    Plot_Resultants_Button = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Plot_Resultants_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'string', string, 'Enable', 'on', 'Visible', 'off');
    set(Plot_Resultants_Button, 'Position', [1, 1, Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % Кнопка Erase
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Скрыть';
        case 'EN'
            string = 'Erase';
    end
    
    Erase_Resultants_Button = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Erase_Resultants_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'string', string, 'Enable', 'on', 'Visible', 'off');
    set(Erase_Resultants_Button, 'Position', [Plot_Resultants_Button.Position(1) + Plot_Resultants_Button.Position(3) + Graphics_Properties.Panel_Inner_Offset, Plot_Resultants_Button.Position(2), ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    Text_Resultants_SP = uicontrol(Side_Panel, 'Style', 'Text', 'String', Tab_Titles{4}, 'Tag', 'Text_Resultants_SP', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Resultants_SP, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Pressure_Center_Button.Position(2) - Text_Shift, ...
        Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки точки суммирования
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Точка суммирования';
        case 'EN'
            string = 'Summation point';
    end
    
    Draw_Summation_Point_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Summation_Point_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'CData', Icons_26{20});
    set(Draw_Summation_Point_Button, 'Position', [Text_Resultants_SP.OuterPosition(1), Text_Resultants_SP.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка подписи точки суммирования
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Подпись';
        case 'EN'
            string = 'Label';
    end
    
    Label_Summation_Point_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Label_Summation_Point_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{21});
    set(Label_Summation_Point_Button, 'Position', [Draw_Summation_Point_Button.Position(1) + Button_Shift, Draw_Summation_Point_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка координат точки суммирования
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Координаты';
        case 'EN'
            string = 'Coordinates';
    end
    
    Summation_Point_Coord_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Summation_Point_Coord_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{2});
    set(Summation_Point_Coord_Button, 'Position', [Label_Summation_Point_Button.Position(1) + Button_Shift, Label_Summation_Point_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки системы координат
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Система координат для результирующих силовых факторов';
        case 'EN'
            string = 'Coordinate system for resultants';
    end
    
    Draw_Coord_System_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Coord_System_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'CData', Icons_26{25});
    set(Draw_Coord_System_Button, 'Position', [Summation_Point_Coord_Button.OuterPosition(1) + Button_Shift, Summation_Point_Coord_Button.OuterPosition(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки вектора результирующей силы
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Результирующая сила';
        case 'EN'
            string = 'Force resultant';
    end
    
    Draw_Force_Resultant_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Force_Resultant_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'CData', Icons_26{22});
    set(Draw_Force_Resultant_Button, 'Position', [Draw_Summation_Point_Button.OuterPosition(1), Draw_Summation_Point_Button.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки нормальной и тангенциальной компонент
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Нормальная/тангенциальная компоненты';
        case 'EN'
            string = 'Normal/tangential components';
    end
    
    Draw_Force_Pn_Pt_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Force_Pn_Pt_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'on', 'CData', Icons_26{24});
    set(Draw_Force_Pn_Pt_Button, 'Position', [Draw_Force_Resultant_Button.Position(1) + Button_Shift, Draw_Force_Resultant_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки XYZ компонент
    switch Graphics_Properties.Language
        case 'RU'
            string = 'XYZ компоненты';
        case 'EN'
            string = 'XYZ components';
    end
    
    Draw_Force_XYZ_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Force_XYZ_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'on', 'CData', Icons_26{2});
    set(Draw_Force_XYZ_Button, 'Position', [Draw_Force_Pn_Pt_Button.Position(1) + Button_Shift, Draw_Force_Pn_Pt_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки вектора результирующего момента
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Результирующий момент';
        case 'EN'
            string = 'Moment resultant';
    end
    
    Draw_Moment_Resultant_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Moment_Resultant_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'CData', Icons_26{23});
    set(Draw_Moment_Resultant_Button, 'Position', [Draw_Force_Resultant_Button.OuterPosition(1), Draw_Force_Resultant_Button.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки XYZ компонент
    switch Graphics_Properties.Language
        case 'RU'
            string = 'XYZ компоненты';
        case 'EN'
            string = 'XYZ components';
    end
    
    Draw_Moment_XYZ_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Moment_XYZ_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'on', 'CData', Icons_26{2});
    set(Draw_Moment_XYZ_Button, 'Position', [Draw_Moment_Resultant_Button.Position(1) + Button_Shift, Draw_Moment_Resultant_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки фактического центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Фактический центр давления';
        case 'EN'
            string = 'Actual pressure center';
    end
    
    Draw_Actual_Pressure_Center_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Actual_Pressure_Center_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'CData', Icons_26{19});
    set(Draw_Actual_Pressure_Center_Button, 'Position', [Draw_Moment_Resultant_Button.OuterPosition(1), Draw_Moment_Resultant_Button.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка подписи центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Подпись';
        case 'EN'
            string = 'Label';
    end
    
    Label_Actual_Pressure_Center_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Label_Actual_Pressure_Center_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{14});
    set(Label_Actual_Pressure_Center_Button, 'Position', [Draw_Actual_Pressure_Center_Button.Position(1) + Button_Shift, Draw_Actual_Pressure_Center_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка декартовых координат центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Координаты';
        case 'EN'
            string = 'Coordinates';
    end
    
    Actual_Pressure_Center_Coord_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Actual_Pressure_Center_Coord_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{2});
    set(Actual_Pressure_Center_Coord_Button, 'Position', [Label_Actual_Pressure_Center_Button.Position(1) + Button_Shift, Label_Actual_Pressure_Center_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка параметрических координат центра давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Параметрические координаты';
        case 'EN'
            string = 'Parametric coordinates';
    end
    
    Actual_Pressure_Center_Param_Coord_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Actual_Pressure_Center_Param_Coord_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Resultants, ...
        'TooltipString', string, 'Enable', 'off', 'CData', Icons_26{15});
    set(Actual_Pressure_Center_Param_Coord_Button, 'Position', [Actual_Pressure_Center_Coord_Button.Position(1) + Button_Shift, Actual_Pressure_Center_Coord_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);

    % ##################### Fields #####################
    
    % Кнопка Plot
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Показать';
        case 'EN'
            string = 'Plot';
    end
    
    Plot_Fields_Button = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Plot_Fields_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Fields, ...
        'string', string, 'Enable', 'on', 'Visible', 'off');
    set(Plot_Fields_Button, 'Position', [1, 1, Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);
    
    % Кнопка Erase
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Скрыть';
        case 'EN'
            string = 'Erase';
    end
    
    Erase_Fields_Button = uicontrol(Side_Panel, 'Style', 'pushbutton', 'Tag', 'Erase_Fields_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Fields, ...
        'string', string, 'Enable', 'on', 'Visible', 'off');
    set(Erase_Fields_Button, 'Position', [Plot_Fields_Button.Position(1) + Plot_Fields_Button.Position(3) + Graphics_Properties.Panel_Inner_Offset, Plot_Fields_Button.Position(2), ...
        Graphics_Properties.Plot_Erase_Button_Width, Graphics_Properties.Plot_Erase_Button_High]);

    % ============== Текст раздела Fields ==============
    
    Text_Fields_SP = uicontrol(Side_Panel, 'Style', 'Text', 'String', Tab_Titles{5}, 'Tag', 'Text_Fields_SP', 'Units', 'pixels', 'HorizontalAlignment', 'left');
    set(Text_Fields_SP, 'OuterPosition', [1 + Graphics_Properties.Panel_Left_Offset, Draw_Actual_Pressure_Center_Button.Position(2) - Text_Shift, ...
        Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset, Graphics_Properties.Panel_Textbox_High]);
    
    % Кнопка отрисовки поля распределенной нагрузки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Поле нормальной нагрузки (CID distributed load)';
        case 'EN'
            string = 'Normal load field (CID distributed load)';
    end
    
    Draw_CID_Distr_Load_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_CID_Distr_Load_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Fields, ...
        'TooltipString', string, 'CData', Icons_26{27});
    set(Draw_CID_Distr_Load_Button, 'Position', [Text_Fields_SP.OuterPosition(1), Text_Fields_SP.OuterPosition(2) - Button_Shift, ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Группа кнопок тип поля
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Тип поля';
        case 'EN'
            string = 'Field type';
    end
    
    Button_Group_Field_Type = uibuttongroup(Side_Panel, 'Title', string, 'Tag', 'Button_Group_Field_Type', 'Units', 'pixels', 'SelectionChangedFcn', @GW_Plot_Erase_Fields, 'Visible', 'off');
    set(Button_Group_Field_Type, 'Position', [1, 1, Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset + 2, 4*Graphics_Properties.Radio_Button_Box_High+5]);
    
    % Кнопка Element forces
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Силы в элементах';
        case 'EN'
            string = 'Element forces';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Силы, действующие на элементы';
        case 'EN'
            tooltip_string = 'Forces acting on elements';
    end
    
    Radio_Button_Forces = uicontrol(Button_Group_Field_Type, 'Style', 'radiobutton', 'Tag', 'Radio_Button_Forces', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_Forces, 'Position', [10, 6+2*Graphics_Properties.Radio_Button_Box_High, Button_Group_Field_Type.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Кнопка Element forces / Element areas
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Силы в элементах / Площади элементов';
        case 'EN'
            string = 'Element forces / Element areas';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Силы, действующие на элементы, деленные на площади элементов. Это поле передается в Patran в качестве CID Distributed Load';
        case 'EN'
            tooltip_string = 'Forces acting on elements divided by element areas. This field is passed to Patran as a CID Distributed Load';
    end
    
    Radio_Button_Forces_Areas = uicontrol(Button_Group_Field_Type, 'Style', 'radiobutton', 'Tag', 'Radio_Button_Forces_Areas', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_Forces_Areas, 'Position', [10, 6+Graphics_Properties.Radio_Button_Box_High, Button_Group_Field_Type.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Кнопка Element forces / Projected element areas
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Силы в элементах / Площади проекций эл-тов';
        case 'EN'
            string = 'Element forces / Projected element areas';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Силы, действующие на элементы, деленные на площади проекций элементов. Это поле повторяет исходное распределение давления';
        case 'EN'
            tooltip_string = 'Forces acting on elements divided by projected element areas. This field matches the original pressure distribution';
    end
    
    Radio_Button_Forces_Proj_Areas = uicontrol(Button_Group_Field_Type, 'Style', 'radiobutton', 'Tag', 'Radio_Button_Forces_Proj_Areas', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_Forces_Proj_Areas, 'Position', [10, 6, Button_Group_Field_Type.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Группа кнопок точка приложения
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Точка приложения';
        case 'EN'
            string = 'Application point';
    end
    
    Button_Group_Application_Point = uibuttongroup(Side_Panel, 'Title', string, 'Tag', 'Button_Group_Application_Point', 'Units', 'pixels', 'SelectionChangedFcn', @GW_Plot_Erase_Fields, 'Visible', 'off');
    set(Button_Group_Application_Point, 'Position', [1, 1, Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset + 2, 3*Graphics_Properties.Radio_Button_Box_High+5]);
    
    % Кнопка Element centriods
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Центроиды элементов';
        case 'EN'
            string = 'Element centriods';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Точки приложения векторов соответствуют центроидам элементов';
        case 'EN'
            tooltip_string = 'The application points of the vectors correspond to element centriods';
    end
    
    Radio_Button_Mesh = uicontrol(Button_Group_Application_Point, 'Style', 'radiobutton', 'Tag', 'Radio_Button_Mesh', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_Mesh, 'Position', [10, 6+Graphics_Properties.Radio_Button_Box_High, Button_Group_Application_Point.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Кнопка Projected element centroids
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Центроиды проекций элементов';
        case 'EN'
            string = 'Projected element centroids';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Точки приложения векторов соответствуют центроидам проекций элементов';
        case 'EN'
            tooltip_string = 'The application points of the vectors correspond to projected element centriods';
    end
    
    Radio_Button_Proj_Mesh = uicontrol(Button_Group_Application_Point, 'Style', 'radiobutton', 'Tag', 'Radio_Button_Proj_Mesh', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_Proj_Mesh, 'Position', [10, 6, Button_Group_Application_Point.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Группа кнопок векторы
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Векторы';
        case 'EN'
            string = 'Vectors';
    end
    
    Button_Group_Vectors = uibuttongroup(Side_Panel, 'Title', string, 'Tag', 'Button_Group_Vectors', 'Units', 'pixels', 'SelectionChangedFcn', @GW_Plot_Erase_Fields, 'Visible', 'off');
    set(Button_Group_Vectors, 'Position', [1, 1, Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset + 2, 3*Graphics_Properties.Radio_Button_Box_High+5]);
    
    % Кнопка от точки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'От точки';
        case 'EN'
            string = 'From point';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Вектор начинается от точки';
        case 'EN'
            tooltip_string = 'Vector starts from the point';
    end
    
    Radio_Button_From_Point = uicontrol(Button_Group_Vectors, 'Style', 'radiobutton', 'Tag', 'Radio_Button_From_Point', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_From_Point, 'Position', [10, 6+Graphics_Properties.Radio_Button_Box_High, Button_Group_Vectors.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Кнопка к точке
    switch Graphics_Properties.Language
        case 'RU'
            string = 'К точке';
        case 'EN'
            string = 'To point';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Вектор ведет к точке';
        case 'EN'
            tooltip_string = 'Vector leads to the point';
    end
    
    Radio_Button_To_Point = uicontrol(Button_Group_Vectors, 'Style', 'radiobutton', 'Tag', 'Radio_Button_To_Point', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_To_Point, 'Position', [10, 6, Button_Group_Vectors.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Кнопка отрисовки векторов давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Поле давления. Длины векторов численно равны распределенной нагрузке, действующей в базовой плоскости';
        case 'EN'
            string = 'Pressure field. The lengths of the vectors are numerically equal to the distributed load acting in the basic plane';
    end
    
    Draw_Pressure_Field_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Pressure_Field_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Fields, ...
        'TooltipString', string, 'CData', Icons_26{26});
    set(Draw_Pressure_Field_Button, 'Position', [Draw_CID_Distr_Load_Button.OuterPosition(1) + Button_Shift, Draw_CID_Distr_Load_Button.OuterPosition(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Кнопка отрисовки нормальной и тангенциальной компонент
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Нормальная/тангенциальная компоненты. Нормальная компонента поля давления численно равна вертикальной силе, действующей на элемент, деленной на площадь элемента';
        case 'EN'
            string = 'Normal/tangential components. The normal component of the pressure field is numerically equal to the vertical force acting on the element divided by the area of the element';
    end
    
    Draw_Pressure_Pn_Pt_Button = uicontrol(Side_Panel, 'Style', 'togglebutton', 'Tag', 'Draw_Pressure_Pn_Pt_Button', 'Units', 'pixels', 'Callback', @GW_Plot_Erase_Fields, ...
        'TooltipString', string, 'Enable', 'on', 'CData', Icons_26{24});
    set(Draw_Pressure_Pn_Pt_Button, 'Position', [Draw_Pressure_Field_Button.Position(1) + Button_Shift, Draw_Pressure_Field_Button.Position(2), ...
        Graphics_Properties.Panel_Button_Size, Graphics_Properties.Panel_Button_Size]);
    
    % Группа кнопок векторы давления
    switch Graphics_Properties.Language
        case 'RU'
            string = 'Векторы';
        case 'EN'
            string = 'Vectors';
    end
    
    Button_Group_Pressure_Vectors = uibuttongroup(Side_Panel, 'Title', string, 'Tag', 'Button_Group_Pressure_Vectors', 'Units', 'pixels', 'SelectionChangedFcn', @GW_Plot_Erase_Fields, 'Visible', 'off');
    set(Button_Group_Pressure_Vectors, 'Position', [1, 1, Side_Panel_Inner_Position(3) - Graphics_Properties.Panel_Left_Offset - Graphics_Properties.Panel_Right_Offset + 2, 3*Graphics_Properties.Radio_Button_Box_High+5]);
    
    % Кнопка от точки
    switch Graphics_Properties.Language
        case 'RU'
            string = 'От точки';
        case 'EN'
            string = 'From point';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Вектор начинается от точки';
        case 'EN'
            tooltip_string = 'Vector starts from the point';
    end
    
    Radio_Button_From_Point_Pressure = uicontrol(Button_Group_Pressure_Vectors, 'Style', 'radiobutton', 'Tag', 'Radio_Button_From_Point_Pressure', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_From_Point_Pressure, 'Position', [10, 6+Graphics_Properties.Radio_Button_Box_High, Button_Group_Pressure_Vectors.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % Кнопка к точке
    switch Graphics_Properties.Language
        case 'RU'
            string = 'К точке';
        case 'EN'
            string = 'To point';
    end
    
    switch Graphics_Properties.Language
        case 'RU'
            tooltip_string = 'Вектор ведет к точке';
        case 'EN'
            tooltip_string = 'Vector leads to the point';
    end
    
    Radio_Button_To_Point_Pressure = uicontrol(Button_Group_Pressure_Vectors, 'Style', 'radiobutton', 'Tag', 'Radio_Button_To_Point_Pressure', 'Units', 'pixels', 'TooltipString', tooltip_string, 'String', string, 'Enable', 'off');
    set(Radio_Button_To_Point_Pressure, 'Position', [10, 6, Button_Group_Pressure_Vectors.Position(3) - 10, Graphics_Properties.Radio_Button_Box_High]);
    
    % ============== Выключение кнопок ==============
    
    % Установка нажатой кнопки
    Button_Group_Field_Type.SelectedObject = Radio_Button_Forces_Areas;
    
    % Цвет шрифта
    set(Button_Group_Field_Type, 'ForegroundColor', uint8([109 109 109]));
    set(Button_Group_Application_Point, 'ForegroundColor', uint8([109 109 109]));
    set(Button_Group_Vectors, 'ForegroundColor', uint8([109 109 109]));
    set(Button_Group_Pressure_Vectors, 'ForegroundColor', uint8([109 109 109]));
    
    % Отключение кнопок
    switch Graphics.Load.Distributed_Load_Mode
        
        case 'CID_DISTR_LOAD'
            
            set(Draw_Pressure_Field_Button, 'Enable', 'off');
            set(Draw_Pressure_Pn_Pt_Button, 'Enable', 'off');
            
        case 'PRESSURE'
            
            set(Draw_CID_Distr_Load_Button, 'Enable', 'off');
            
    end
    
end

% --- Создание кнопок тулбара ---

% Создание кнопок стандартных видов
switch Graphics_Properties.Language
    case 'RU'
        string = 'Вид спереди';
    case 'EN'
        string = 'Front view';
end
uipushtool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Front_View_Button', 'CData', Icons_16{9}, 'ClickedCallback', @GW_Set_View);

switch Graphics_Properties.Language
    case 'RU'
        string = 'Вид сзади';
    case 'EN'
        string = 'Rear view';
end
uipushtool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Rear_View_Button', 'CData', Icons_16{10}, 'ClickedCallback', @GW_Set_View);

switch Graphics_Properties.Language
    case 'RU'
        string = 'Вид сверху';
    case 'EN'
        string = 'Top view';
end
uipushtool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Top_View_Button', 'CData', Icons_16{11}, 'ClickedCallback', @GW_Set_View);

switch Graphics_Properties.Language
    case 'RU'
        string = 'Вид снизу';
    case 'EN'
        string = 'Bottom view';
end
uipushtool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Bottom_View_Button', 'CData', Icons_16{12}, 'ClickedCallback', @GW_Set_View);

switch Graphics_Properties.Language
    case 'RU'
        string = 'Вид слева';
    case 'EN'
        string = 'Left side view';
end
uipushtool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Left_Side_View_Button', 'CData', Icons_16{13}, 'ClickedCallback', @GW_Set_View);

switch Graphics_Properties.Language
    case 'RU'
        string = 'Вид справа';
    case 'EN'
        string = 'Right side view';
end
uipushtool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Right_Side_View_Button', 'CData', Icons_16{14}, 'ClickedCallback', @GW_Set_View);

% Создание кнопок поворотов на 90 градусов
switch Graphics_Properties.Language
    case 'RU'
        string = 'Повернуть вид на 90° против часовой стрелки';
    case 'EN'
        string = 'Rotate view 90° counterclockwise';
end
uipushtool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Rotate_Plus_90_Button', 'CData', Icons_16{7}, 'ClickedCallback', @GW_Rotate_90, 'Separator', 'on');

switch Graphics_Properties.Language
    case 'RU'
        string = 'Повернуть вид на 90° по часовой стрелке';
    case 'EN'
        string = 'Rotate view 90° clockwise';
end
uipushtool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Rotate_Minus_90_Button', 'CData', Icons_16{6}, 'ClickedCallback', @GW_Rotate_90);

% Создание кнопки выбора центра вращения
switch Graphics_Properties.Language
    case 'RU'
        string = 'Задать центр вращения';
    case 'EN'
        string = 'Set rotation center';
end
uitoggletool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Rotation_Center_Button', 'CData', Icons_16{8}, 'State', 'off', 'OnCallback', @GW_Set_Rotation_Center, 'ClickedCallback', @GW_Unpress_Button);

% Создание кнопки подгона масштаба
switch Graphics_Properties.Language
    case 'RU'
        string = 'Оптимальный масштаб';
    case 'EN'
        string = 'Fit view';
end
uipushtool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Fit_View_Button', 'CData', Icons_16{2}, 'ClickedCallback', @GW_Fit_View, 'Separator', 'on');

% Создание кнопки переключения фона
switch Graphics_Properties.Language
    case 'RU'
        string = 'Переключить цвет фона';
    case 'EN'
        string = 'Switch background color';
end
uipushtool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Day_Night_Button', 'CData', Icons_16{16}, 'ClickedCallback', @GW_Switch_Day_Night, 'Separator', 'on');

% Создание кнопки отрисовки объектов по умолчанию
switch Graphics_Properties.Language
    case 'RU'
        string = 'Объекты по умолчанию';
    case 'EN'
        string = 'Default objects';
end
uipushtool(Toolbar_Handle, 'Tooltip', string, 'Tag', 'Default_Objects_Button', 'CData', Icons_16{17}, 'ClickedCallback', @GW_Default_Objects, 'Separator', 'on');

% --- Создание области построения данных ---

% Создание области построения данных
Axes_Handle = axes(Panel_For_Axes);

% Скрытая линия
Projected_Chord_Surf_Boundary = [Graphics.Load.Chord_Surface.A1_projected, ...
                                 Graphics.Load.Chord_Surface.A2_projected, ...
                                 Graphics.Load.Chord_Surface.A4_projected, ...
                                 Graphics.Load.Chord_Surface.A3_projected, ...
                                 Graphics.Load.Chord_Surface.A1_projected];

Hidden_Line_Handle = plot3(Axes_Handle, Projected_Chord_Surf_Boundary(1,:), Projected_Chord_Surf_Boundary(2,:), Projected_Chord_Surf_Boundary(3,:), 'Color', [0 0 0]);
set(Hidden_Line_Handle, 'Tag', 'Hidden_Line');
hold on;

% Создание тэга области построения
set(Axes_Handle, 'Tag', 'Main_Axes');

% Удаление кнопок навигации из области построения данных начиная с MATLAB R2018b
Matlab_Release = version('-release');

if (strcmp(Matlab_Release, '2018b') || str2double(Matlab_Release(1:4)) >= 2019)
    Axes_Handle.Toolbar.Visible = 'off';
end

% --- Построение объектов по умолчанию (нажатие кнопок) ---

tmp = [];

% Геометрия
tmp.Value = 1;
tmp.Tag = 'Plot_Geom_Button';
GW_Plot_Erase_Geom(tmp,[]);

% % Сетка
% tmp.Value = 1;
% tmp.Tag = 'Plot_Mesh_Button';
% GW_Plot_Erase_Mesh(tmp,[]);

% Эпюры
tmp.Value = 1;
tmp.Tag = 'Plot_Diagrams_Button';
GW_Plot_Erase_Diagrams(tmp,[]);

% Результирующие
tmp.Value = 1;
tmp.Tag = 'Plot_Resultants_Button';
GW_Plot_Erase_Resultants(tmp,[]);

% % Поля
% tmp.Value = 1;
% tmp.Tag = 'Plot_Fields_Button';
% GW_Plot_Erase_Fields(tmp,[]);

% --- Еще действия ---

% Установка одинакового масштаба данных по всем осям
daspect(Axes_Handle, [1 1 1]);

% Установка соотношения сторон области построения данных
pbaspect(Axes_Handle, 'manual');
pbaspect(Axes_Handle, [1 1 1]);

% Отключение автоматического масштабирования при повороте
set(Axes_Handle, 'CameraViewAngleMode', 'manual');

% Отключение обрезки за пределами области построения
set(Axes_Handle, 'Clipping', 'off');

% Отключение отрисовки осей
set(Axes_Handle, 'Visible', 'off');

% Изменение масштаба по умолчанию (установка пределов осей)
if (Graphics_Properties.Scale_Factor ~= 1)

    xl = xlim;
    yl = ylim;
    zl = zlim;

    xlim([(xl(1) + xl(2))/2 - (xl(2) - xl(1))/2/Graphics_Properties.Scale_Factor, (xl(1) + xl(2))/2 + (xl(2) - xl(1))/2/Graphics_Properties.Scale_Factor]);
    ylim([(yl(1) + yl(2))/2 - (yl(2) - yl(1))/2/Graphics_Properties.Scale_Factor, (yl(1) + yl(2))/2 + (yl(2) - yl(1))/2/Graphics_Properties.Scale_Factor]);
    zlim([(zl(1) + zl(2))/2 - (zl(2) - zl(1))/2/Graphics_Properties.Scale_Factor, (zl(1) + zl(2))/2 + (zl(2) - zl(1))/2/Graphics_Properties.Scale_Factor]);

end

% Установка света
camlight(gca, 'right', 'infinite');

% --- Создание области построения системы координат ---

% Создание области построения данных
Axes_Handle_Coord = axes(Panel_For_Axes, 'Units', 'pixels');

% Задание размера
set(Axes_Handle_Coord, 'Position', [Graphics_Properties.Coord_Axes_Offset, Graphics_Properties.Coord_Axes_Offset, Graphics_Properties.Coord_Axes_Width, Graphics_Properties.Coord_Axes_Width]);

% Оси системы координат
Coord_Axes_Handle = plot3(Axes_Handle_Coord, [0, 0.8, NaN, 0, 0, NaN, 0, 0], [0, 0, NaN, 0, 0.8, NaN, 0, 0], [0, 0, NaN, 0, 0, NaN, 0, 0.8]);
hold on;

set(Coord_Axes_Handle, 'Color', Graphics_Properties.Coord_Color);

X_Label_Handle = text(Axes_Handle_Coord, 1, 0, 0, 'X');
set(X_Label_Handle, 'Color', 'white');
set(X_Label_Handle, 'Tag', 'X_Label');

Y_Label_Handle = text(Axes_Handle_Coord, 0, 1, 0, 'Y');
set(Y_Label_Handle, 'Color', 'white');
set(Y_Label_Handle, 'Tag', 'Y_Label');

Z_Label_Handle = text(Axes_Handle_Coord, 0, 0, 1, 'Z');
set(Z_Label_Handle, 'Color', 'white');
set(Z_Label_Handle, 'Tag', 'Z_Label');

% Создание тэга
set(Axes_Handle_Coord, 'Tag', 'Coord_Axes');

% Удаление кнопок навигации из области построения данных начиная с MATLAB R2018b
Matlab_Release = version('-release');

if (strcmp(Matlab_Release, '2018b') || str2double(Matlab_Release(1:4)) >= 2019)
    Axes_Handle_Coord.Toolbar.Visible = 'off';
end

% Установка одинакового масштаба данных по всем осям
daspect(Axes_Handle_Coord, [1 1 1]);

% Установка соотношения сторон области построения данных
pbaspect(Axes_Handle_Coord, 'manual');
pbaspect(Axes_Handle_Coord, [1 1 1]);

% Отключение автоматического масштабирования при повороте
set(Axes_Handle_Coord, 'CameraViewAngleMode', 'manual');

% Отключение обрезки за пределами области построения
set(Axes_Handle_Coord, 'Clipping', 'off');

% Отключение отрисовки осей
set(Axes_Handle_Coord, 'Visible', 'off');

% Установка пределов осей (увеличение масштаба по умолчанию)
xlim([-1, 1]);
ylim([-1, 1]);
zlim([-1, 1]);

% Переключение осей на область построения данных
axes(Axes_Handle);

% Система координат поверх всех остальных объектов
uistack(Axes_Handle_Coord, 'top');

% Скрытие линии
set(Hidden_Line_Handle, 'Visible', 'off');

% --- Показ окна ---
GW_Resize_Window([],[]);
set(Graphic_Window_Handle, 'Visible', 'on');

% --- Сохранение параметров для кнопки Fit_View ---

Graphics_Properties.Camera_Target = camtarget();
Graphics_Properties.Camera_Position = campos();
Graphics_Properties.Camera_Angle = camva();

% --- Ручные режимы ---

set(Axes_Handle, 'CameraViewAngleMode', 'manual', 'CameraUpVectorMode', 'manual', 'CameraTargetMode', 'manual', 'CameraPositionMode', 'manual');

% --- Режим манипуляций ---

GW_FCW();
